[R] how to reshape an array avoiding for loops
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Tue Aug 16 23:18:27 CEST 2005
Wladimir Eremeev <wl at eimb.ru> writes:
> Dear r-help,
>
> I have an array a1 with dimensions [1:660,1:65,1:25]
> I would like the first dimension to be the last one.
> That is I want and array [1:65,1:25,1:660]
>
> The only way to do this, I know, is
>
> tmp.a<-array(dim=dim(a1)[c(2,3,1)])
> for(i in 1:dim(a1)[1]) tmp.a[,,i]<-a1[i,,]
> a1<-tmp.a
> rm(tmp.a)
>
>
> Is it possible to avoid 'for' loop here?
aperm() is your friend.
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list