[R] loop is going to take 26 hours - needs to be quicker!
Petr Pikal
petr.pikal at precheza.cz
Thu Dec 14 14:39:53 CET 2006
Hi
if I understand correctly, you have one column you need to reformat
into array. Array is basically a vector with dim attribute. Therefore
if your data were properly sorted you could use just
gpcc.array <- array(gpccnata2[,5], c(144,72,46))
to reformat column 5 of your data frame. But you shall be 100% sure
you really want an array and not any other data form.
HTH
Petr
On 14 Dec 2006 at 12:56, Jenny Barnes wrote:
Date sent: Thu, 14 Dec 2006 12:56:16 +0000 (GMT)
From: Jenny Barnes <jmb at mssl.ucl.ac.uk>
To: r-help at stat.math.ethz.ch
Subject: [R] loop is going to take 26 hours - needs to be quicker!
Send reply to: Jenny Barnes <jmb at mssl.ucl.ac.uk>
<mailto:r-help-request at stat.math.ethz.ch?subject=unsubscribe>
<mailto:r-help-request at stat.math.ethz.ch?subject=subscribe>
> Dear R-help,
>
> I have a loop, which is set to take about 26 hours to run at the rate
> it's going - this is ridiculous and I really need your help to find a
> more efficient way of loading up my array gpcc.array:
>
> #My data is stored in a table format with all the data in one long
> #column running though every longitute, for every latitude, for every
> #year. The original data is sotred as gpcc.data2 where dim(gpcc.data2)
> #= [476928,5] where the 5th column is the data:
>
> #make the array in the format I need [longitude,latitude,years]
>
> gpcc.array <- array(NA, c(144,72,46))
>
> n=0
> for(k in 1:46){
> for(j in 1:72){
> for(i in 1:144){
> n <- n+1
> gpcc.array[i,j,k] <- gpcc.data2[n,5]
> print(j)
> }
> }
> }
>
> So it runs through all the longs for every lat for every year - which
> is the order the data is running down the column in gpcc.data2 so n
> increses by 1 each time and each data point is pulled off....
>
> It needs to be a lot quicker, I'd appreciate any ideas!
>
> Many thanks for taking time to read this,
>
> Jenny Barnes
>
> ~~~~~~~~~~~~~~~~~~
> Jennifer Barnes
> PhD student - long range drought prediction
> Climate Extremes
> Department of Space and Climate Physics
> University College London
> Holmbury St Mary, Dorking
> Surrey
> RH5 6NT
> 01483 204149
> 07916 139187
> Web: http://climate.mssl.ucl.ac.uk
>
> ______________________________________________
> 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 and provide commented,
> minimal, self-contained, reproducible code.
Petr Pikal
petr.pikal at precheza.cz
More information about the R-help
mailing list