[R] Applying a function to each element of an array
Patrick Burns
pburns at pburns.seanet.com
Fri Oct 7 22:29:13 CEST 2005
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
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
>
>
>
>
More information about the R-help
mailing list