[R] Array arithmetic

Henrique Dallazuanna wwwhsd at gmail.com
Thu Mar 6 20:12:49 CET 2008


Hum you are rigth, I forgot of 'else'.

On 06/03/2008, Benilton Carvalho <bcarvalh at jhsph.edu> wrote:
> no, it won't.
>
>  you're doing the right math on the "valid" subset... but you're not
>  returning the zeros where needed.... therefore, the whole thing will
>  get recycled to match the dimensions.
>
>
>  b
>
>
>  On Mar 6, 2008, at 2:03 PM, Henrique Dallazuanna wrote:
>
>  > I think this should work:
>  >
>  > array(A[abs(B) > 10e-5]/B[abs(B) > 10e-5], dim=c(L, M, N, P))
>  >
>  > On 06/03/2008, Gang Chen <gangchen6 at gmail.com> wrote:
>  >> I have two arrays A and B with dimensions of (L, M, N, P) and (L, M,
>  >> N), and I want to do
>  >>
>  >> for (i in 1:L) {
>  >> for (j in 1:M) {
>  >> for (k in 1:N) {
>  >>   if (abs(B[i, j, k]) > 10e-5)  C[i, j, k,] <- A[i, j, k,]/B[i, j, k]
>  >>   else C[i, j, k,] <- 0
>  >> }
>  >> }
>  >> }
>  >>
>  >> How can I get C more efficiently than looping?
>  >>
>  >> Thanks,
>  >> Gang
>  >>
>  >> ______________________________________________
>  >> R-help at r-project.org mailing list
>  >> https://stat.ethz.ch/mailman/listinfo/r-help
>  >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>  >> and provide commented, minimal, self-contained, reproducible code.
>  >>
>  >
>  >
>  > --
>  > Henrique Dallazuanna
>  > Curitiba-Paraná-Brasil
>  > 25° 25' 40" S 49° 16' 22" O
>  >
>  > ______________________________________________
>  > R-help at r-project.org mailing list
>  > https://stat.ethz.ch/mailman/listinfo/r-help
>  > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>  > and provide commented, minimal, self-contained, reproducible code.
>
>
>


-- 
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O



More information about the R-help mailing list