我有一组数据,例如:
x|y|z
-4|1|45
-4|2|68
-4|3|96
-2|1|56
-2|2|65
-2|3|89
0|1|45
0|2|56
0|3|75
2|1|23
2|2|56
2|3|75
4|1|42
4|2|65
4|3|78
在这里,我需要使用z值在x和y之间进行插值。
我尝试通过使用以下代码使用z值分别对x和y进行插值:
interpol<-approx(x,z,method="linear")
interpol_1<-approx(y,z,method="linear")
现在我正在尝试使用所有三列,但值都出错了。
答案 0 :(得分:1)
在脚本中,您忘了定向到您的data.frame
。注意在$
函数中使用approx
。
interpol <- approx(df$x,df$z,method="linear")
interpol_1 <- approx(df$y,df$z,method="linear")
数据:
df <- data.frame(
x = c(-4, -4, -4, -2, -2, -2, 0, 0, 0, 2, 2, 2, 4, 4, 4),
y = c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3),
z = c(45, 68, 96, 56, 65, 89, 45, 56, 75, 23, 56, 75, 42, 65, 78)
)