Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R自动克里格循环(包自动映射)_R_Loops_Automap - Fatal编程技术网

R自动克里格循环(包自动映射)

R自动克里格循环(包自动映射),r,loops,automap,R,Loops,Automap,我有一个包含每日观察的数据框,我想对其进行插值。我使用automap为每一天构建一个变异函数,然后应用于新数据。我尝试运行一个循环,并将结果放入一个新的数据帧中。不幸的是,包含结果的数据框只包含最后预测的日期 coordinates(mydata) <- ~lat+long coordinates(new_data) <- ~lat+long df <- data.frame(matrix(nrow=50,ncol=10)) #new data frame for predic

我有一个包含每日观察的数据框,我想对其进行插值。我使用automap为每一天构建一个变异函数,然后应用于新数据。我尝试运行一个循环,并将结果放入一个新的数据帧中。不幸的是,包含结果的数据框只包含最后预测的日期

coordinates(mydata) <- ~lat+long
coordinates(new_data) <- ~lat+long
df <- data.frame(matrix(nrow=50,ncol=10)) #new data frame for predicted valeus

for(i in 1:ncol(mydata))
    kriging_new <- autoKrige(mydata[,i],mydata,newdata)
    pred <- kriging_new$krige_output$var1.pred
    df[,i] <- data.frame(pred)
我还收到一条警告,说:

Warning message:
In autofitVariogram(formula, data_variogram, model = model, kappa = kappa,  :
  Some models where removed for being either NULL or having a negative sill/range/nugget, 
    set verbose == TRUE for more information
如果我为每一行手动执行自动克里格,一切都会正常工作。循环似乎不像通常那样工作。这是automap软件包中的问题吗


非常感谢

我想你忘了把代码放在你的
for
循环中的花括号里。因此,您将执行循环10次,每次都用自身覆盖
kriging\u new

for(i in 1:ncol(mydata))
    kriging_new <- autoKrige(mydata[,i],mydata,newdata)
始终使用多行语句编写循环,如下所示:

for (condition) {
    statement1
    statement2
    ...
}

正确的!谢谢!想弄明白这一点太久了,一定是完全瞎了:-)现在可以了!
pred <- kriging_new$krige_output$var1.pred
df[, i] <- data.frame(pred)
for (condition) {
    statement1
    statement2
    ...
}