将表数据转换为"原子矢量"在R

时间:2014-04-26 03:27:13

标签: r

我对R.真的很陌生。我有以下几点:

library(stringr)
data <-read.table("C:/dataAnalysis/dataset_317_1.txt")
d<-data[5]
set<-str_count(c("corn", "cornmeal", "corn on the cob", "meal"), "setosa")
ver<-str_count(d, "I.versicolor")
vir<-str_count(d, "I.virginica.")
arr<-c(set,ver,vir)
arr
R说:

> ver<-str_count(data, "I.versicolor")
Error: String must be an atomic vector

我的文件是制表符分隔数据表,第五列中包含字符串。如何从我的表中读取我读入原子向量并让R快乐的数据?

2 个答案:

答案 0 :(得分:2)

如果您要分析的数据位于第五列,则用于定义“d”的代码不正确。

d <- data[[5]]

d <- data[,5]

将正常运作。

数据[5]保持数据帧结构,而数据[[5]]或数据[,5]仅输出向量。

答案 1 :(得分:1)

添加上述答案,避免使用数据[5]之类的代码,除非您想保留数据集的原始类,无论是数组,列表,矩阵还是数据框。如果你想更多地了解子集,那么这是一本很棒的电子书,名为&#34; R Fundamentals&amp;图形&#34;这将是一个很好的桌面参考。