#r #dataframe #time-series #correlation #netcdf
#r #фрейм данных #временные ряды #корреляция #netcdf
Вопрос:
Я пытаюсь вычислить частичную корреляцию между 6 (наблюдаемыми и моделируемыми данными) переменными в одном NetCDF, используя ppcor
package в r, но пока не добился успеха. Я все еще изучаю циклы. Это то, что я пробовал до сих пор :
library(ppcor)
mods <- nc_open("Obs_model_1981-2018.nc")
lon <- ncvar_get(mods, varid = "lon")
lat <- ncvar_get(mods, varid = "lat")
nx <- length(lon)
ny <- length(lat)
obss <- ncvar_get(mods, "obs")
mods1 <- ncvar_get(mods, "mod1")
mods2 <- ncvar_get(mods, "mod2")
mods3 <- ncvar_get(mods, "mod3")
mods4 <- ncvar_get(mods, "mod4")
mods5 <- ncvar_get(mods, "mod5")
rl=array(0, c(nx,ny))
err=array(0, c(nx,ny))
for (x in 1:nx) {
print(x)
for (y in 1:ny) {
pp =data.frame(obss,mods1,mods2,mods3,mods4,mods5)
## pcor need a data frame
rl[x,y] = pcor(pp, "pearson")
}
}
Комментарии:
1. В чем ваш вопрос?
2. Привет, Роберт, цикл не работает, и я не смог создать фрейм данных из 6 переменных. Можете ли вы помочь с кодом