FAQ
The sum in the loop is simply: 2 - (0.5)^count.

So you don't need this loop. As "count" gets large, the sum approaches 2.

Ravi.
-----Original Message-----
From: r-help-bounces at stat.math.ethz.ch [mailto:r-help-
bounces at stat.math.ethz.ch] On Behalf Of Patrick Burns
Sent: Friday, October 07, 2005 4:29 PM
To: Tim Smith
Cc: r-help at stat.math.ethz.ch
Subject: Re: [R] Applying a function to each element of an array

If there weren't an analytic solution to your problem,
then you could build a vector of the answers from 1
to the maximum in the matrix. Call that 'wtvec'. Then:

ans <- array(NA, dim(A), dimnames(A))
ans[] <- wtvec[as.vector(A)]

should get you what you want.

Patrick Burns
patrick at burns-stat.com
+44 (0)20 8525 0696
http://www.burns-stat.com
(home of S Poetry and "A Guide for the Unwilling S User")

Tim Smith wrote:
Hi,

I have a 7000x7000 matrix, and each element is an integer. For each
element, I want to apply the function :
wt <- 0
for(q in 1:count){
wt <- wt + 0.5^(q-1)
}

I get the value of 'count' from the elements in the matrix , and want to
store the corresponding 'wt' value for that element.
I suppose I could loop through the matrix, and apply the function to each
element but this would take a really really long time. Are there any
quicker ways to get the same result?
many thanks,

Tim

---------------------------------

[[alternative HTML version deleted]]

______________________________________________
R-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
guide.html

______________________________________________
R-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
guide.html

## Related Discussions

 view thread | post posts ‹ prev | 10 of 10 | next ›
Discussion Overview
 group r-help categories r posted Oct 7, '05 at 6:48p active Oct 7, '05 at 9:05p posts 10 users 7 website r-project.org irc #r

### 7 users in discussion

Content

People

Support

Translate

site design / logo © 2018 Grokbase