Hi! I have a 3d array:> dim(ib5km15.dbc)[1] 190 241 19 and a set of positions to extract:> ib5km.lincol.random[1:3,][,1] [,2] [1,] 78 70 [2,] 29 213 [3,] 180 22 Geting the values of a 2D array for that set of positions would be:> ima <- ib5km15.dbc[,,1] > ima[ib5km.lincol.random[1:10,]]but don't find the way for the case of the 3D array:> ib5km15.dbc[ib5km.lincol.random[1:10,],]Error in ib5km15.dbc[ib5km.lincol.random[1:10, ], ] : incorrect number of dimensions Could anyone suggest the way of subseting the 3D array to get a vector of z values for each position recorded in ib5km.lincol.random? (avoiding the use of for loops). Thanks Agus Dr. Agustin Lobo Instituto de Ciencias de la Tierra (CSIC) Lluis Sole Sabaris s/n 08028 Barcelona SPAIN tel 34 93409 5410 fax 34 93411 0012 alobo at ija.csic.es
Hoi Agustin, --On woensdag 15 oktober 2003 18:47 +0200 Agustin Lobo <alobo at ija.csic.es> wrote:> Could anyone suggest the way of subseting > the 3D array to get a vector of z values > for each position recorded in ib5km.lincol.random? > (avoiding the use of for loops). >Is section 5.3 from the Introduction to R (p21) helpfull? regards, Paul -- Paul Lemmens NICI, University of Nijmegen ASCII Ribbon Campaign /"\ Montessorilaan 3 (B.01.03) Against HTML Mail \ / NL-6525 HR Nijmegen X The Netherlands / \ Phonenumber +31-24-3612648 Fax +31-24-3616066
One way would be: > apply(ib5km.lincol.random[1:3,], 1, function(i) ib5km15.dbc[i[1],i[2],]) (untested) -- Tony Plate At Wednesday 06:47 PM 10/15/2003 +0200, Agustin Lobo wrote:>Hi! > >I have a 3d array: > > dim(ib5km15.dbc) >[1] 190 241 19 > >and a set of positions to extract: > > ib5km.lincol.random[1:3,] > [,1] [,2] >[1,] 78 70 >[2,] 29 213 >[3,] 180 22 > >Geting the values of a 2D array >for that set of positions would >be: > > > ima <- ib5km15.dbc[,,1] > > ima[ib5km.lincol.random[1:10,]] > >but don't find the way for the case >of the 3D array: > > > ib5km15.dbc[ib5km.lincol.random[1:10,],] >Error in ib5km15.dbc[ib5km.lincol.random[1:10, ], ] : > incorrect number of dimensions > >Could anyone suggest the way of subseting >the 3D array to get a vector of z values >for each position recorded in ib5km.lincol.random? >(avoiding the use of for loops). > >Thanks > >Agus > >Dr. Agustin Lobo >Instituto de Ciencias de la Tierra (CSIC) >Lluis Sole Sabaris s/n >08028 Barcelona SPAIN >tel 34 93409 5410 >fax 34 93411 0012 >alobo at ija.csic.es > >______________________________________________ >R-help at stat.math.ethz.ch mailing list >https://www.stat.math.ethz.ch/mailman/listinfo/r-help