在R中矢量化导入的变量

时间:2014-06-11 11:41:38

标签: r

我已将CSV文件导入R但现在我想将变量提取到矢量中并单独进行分析。你能告诉我怎么做吗?

我知道summary()函数给出了一个粗略的想法,但我想了解更多。

如果这是一个微不足道的问题,我很抱歉,但我看了很多教程视频,并没有在任何地方看到过。

2 个答案:

答案 0 :(得分:2)

使用read.csv将数据读入数据框。获取数据框的名称。它们应该是CSV列的名称,除非您做错了。使用美元符号按名称获取向量。尝试阅读一些教程而不是观看视频,然后你可以试一试。

d = read.csv("foo.csv")
names(d)
v = d$whatever # for example
hist(v) # for example

这完全是微不足道的。

答案 1 :(得分:1)

我假设您使用read.csv()read.table()函数在R中导入数据。(您可以直接在R中使用?帮助,例如?read.csv < / p>

通常情况下,您有一个data.frame。如果你检查documentation,data.frame被描述为“[...]紧密耦合的变量集合,它们共享矩阵和列表的许多属性[...]”

所以基本上你已经可以将数据作为向量处理了。

对SO的快速研究回馈了这两个帖子:

我相信它们更相关。尝试一些关于R的好教程(在这种情况下,视频不是那么形成)。 互联网上有很多好的,例如: * http://www.introductoryr.co.uk/R_Resources_for_Beginners.html(列出一些) 要么 * http://tryr.codeschool.com/

无论如何,处理你的csv的一种方法是:

#import the data to R as a data.frame
mydata = read.csv(file="SomeFile.csv", header = TRUE, sep = ",", 
quote = "\"",dec = ".", fill = TRUE, comment.char = "")

#extract a column to a vector
firstColumn = mydata$col1 # extract the column named "col1" of mydata to a vector
#This previous line is equivalent to:
firstColumn = mydata[,"col1"]

#extract a row to a vector
firstline = mydata[1,] #extract the first row of mydata to a vector

编辑:在某些情况下[1],您可能需要通过应用as.numericas.character等函数来强制向量中的数据:

firstline=as.numeric(mydata[1,])#extract the first row of mydata to a vector
#Note: the entire row *has to be* numeric or compatible with that class

[1]例如当我想在嵌套函数

中提取一行data.frame时,它发生在我身上