如何修复“ $运算符对原子向量无效” /正确加载数据集?

时间:2019-08-21 05:45:18

标签: r rstudio

我正在尝试帮助某人提供他们的r代码。据我所知,我们正在尝试加载失业数据集,将其设置为变量,然后使用summary()+ lm()函数显示数据?我不确定,因为我不知道R,而且作业是俄语的。但是,我们似乎无法使用注释中列出的$。我所看到的是您不能在数组/向量上使用$。运行此功能的正确方法是什么?

我可以使用getElement(variable,position)并获取一个数字。希望这意味着我们至少已经加载了数据集。

library(lmtest)
library(zoo)
df=unemployment
help(unemployment)
df=read.csv("unemployment",sep="\t",dec=".",header=TRUE)
un=unemployment[,1]
exp=unemployment[,5]
summary(lm(df$un~df$exp_1))

我正在假设的事情正在发生:

我们加载包含失业数据集的库。

我们将df分配给数据集。 我们出于某种原因正在读取文件?

我们设置了2个变量,然后尝试使用summary和lm显示某种模型。

很明显,错误在于某处的作业或订单中。谢谢。

1 个答案:

答案 0 :(得分:1)

数据集unemployment是一个时间序列矩阵,它不是data.frame。 $仅受列表支持(包括data.frame)。

要访问矩阵的列,请使用以下方法:

unemployment[,"UN"]

或与您提供的类似,请尝试:

library(lmtest)
library(zoo)
df=unemployment
help(unemployment)

df <- as.data.frame(df) # convert to data.frame
head(df)                # observe df
summary(lm(df$UN~df$x)) # call with right column names