我是R的新手,我正在努力从.csv文件导入数据。
具体来说,我试图提取31个回复,一些" 1",一些" 2",一些" 3"以及一些" 4& #34;来自.csv文件。该数据位于标题Q21
之下所以我尝试了:
c <- mydata["Q21"] #because (mydata$21) gave an "$ operator is invalid for atomic vectors response
但那刚刚回来了 [1] NA
我正在寻找31个整数响应。
不知道我做错了什么。当我用这种语言站起来时,真的很感激任何和所有的帮助。
编辑:
str(mydata)收益率 chr&#34; /Users/charles/Documents/Work/Survey/CSV/Acme_Company.csv"
我确实使用了read.csv(mydata)并且它产生了所有内容,它似乎有像Q20这样的列标题。
当我输入c&lt; - mydata $ Q21(这是我之前写过的拼写错误)时,我得到了: mydata $ Q21中的错误:$运算符对原子矢量无效
MYDATA [1:3,] mydata [1:3,]中的错误:维数不正确
is.data.frame(MYDATA) [1]错误
colnames(MYDATA) NULL
mydata [,&#34; Q21&#34;] mydata中出错[,&#34; Q21&#34;]:维数不正确
所以我不知道 - mydata不是一个数据框,对吧?那么如果我想使用其中的信息该怎么办?
答案 0 :(得分:0)
听起来mydata
不是数据帧而是向量;所以read.csv()
没有给你一个数据帧。 (发布用于读取数据的命令,然后发布str(mydata)
的输出。)
(mydata $ 21)给出了“$运算符对原子矢量响应无效
”
这是你的错误,你的意思是mydata$Q21
。 mydata$21
正在尝试访问名为21
而不是Q21
的列。更仔细地阅读您的错误消息; - )
mydata [“Q21”]刚刚返回[1] NA
首先,检查mydata
是否确实有一个名为Q21
的列。向我们展示colnames(mydata)
。
其次,要获得一个列的片段,您需要mydata[, "Q21"]
,您绝对需要前导逗号,这表示逗号之后的内容是列名或索引。