如何解决 (function (formula, data = NULL, subset = NULL, na.action = na.fail, : invalid type (list) for variable 'y' in R?

How to solve Error in (function (formula, data = NULL, subset = NULL, na.action = na.fail, : invalid type (list) for variable 'y' in R?

我有两个数据框。

 > head(x)
VegCX2X0.7
1          0
2          0
3          0
4          0
5          0
6          0

> head(y)
  layer
1     0
2     0
3     0
4     0
5     0
6     0

上面的代码只显示了每个数据帧的 6 个观察值,但是有 1000 多个观察值。我想计算这两个数据帧之间的散点图。 NA 值设置为 0。我试试这个代码:

mydata = data.frame(x,y)
fit <- lm(y~x, data = mydata)

产生的错误是

Error in model.frame.default(formula = y ~ x, data = mydata, drop.unused.levels = TRUE) :    invalid type (list) for variable 'y'

我真的不明白我该如何解决这个错误。

您的列名不是 y 和 x,它们是您的 data.frames 的名称。如果你想保留 mydata = data.frame(x,y) 结构跟进:

fit <- lm(layer~VegCX2X0.7, data = mydata)

如果你喜欢把它分开data.frames你也可以这样做

fit <- lm(y$layer~x$VegCX2X0.7)