<<*>>= set.seed(13) n<-3 y<-1:n slp<-array(rnorm(n*73*144),c(3,73,144)) n.1<-length(y)-1
print(system.time({
rData <- array(0,c(73,144)) # array to store results
for (i in 1:73) {
for (j in 1:144) {
rData[i,j] <- cor(slp[,i,j],y)
}
}
}))print(system.time({
n.1<-length(y)-1
mean.slp<-apply(slp,c(2,3),mean)
mean.y<-mean(y); sy<-var(y)^0.5
sqslp<-apply(slp*slp,c(2,3),sum)/n.1-mean.slp^2*n/n.1
sslpy<-apply(slp*y,c(2,3),sum)/n.1-mean.slp*mean.y*n/n.1
rslpy<-sslpy/(sqslp^0.5*sy)
}))print(all(round(100*rslpy)==round(100*rData)))
@ output-start [1] 1.49 0.00 1.49 0.00 0.00 [1] 0.92 0.00 0.92 0.00 0.00 [1] TRUE output-end
Peter Wolf
Uwe Ligges wrote:
Maurice McHugh wrote:
Hello everyone-
I have a 3-d array with the 1st dimension being monthly mean data that
I would like to correlate with some time series index, for example, and save the coefficients in an array.
The code I am currently running is....
rData <- array(0,c(73,144)) # array to store results for (i in 1:73) { for (j in 1:144) { rData[i,j] <- cor(slp[,i,j],y) } }
Rather than running this analysis embedded with two outer loops, are =
there any more efficient ways of doing this?
Many thanks!
Don't know whether it's more efficient:
You can try to apply() the function rcorr() in package "Hmisc" to your problem...
Uwe Ligges
Maurice
Maurice McHugh Department of Geography and Anthropology Louisiana State University Baton Rouge, LA [[alternative HTML version deleted]]
______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
