【问题标题】:Vectorise an imported variable in R向量化 R 中的导入变量
【发布时间】:2014-06-11 11:41:37
【问题描述】:

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

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

如果这是一个微不足道的问题,我深表歉意,但我已经观看了许多教程视频,但在任何地方都没有看到。

【问题讨论】:

标签: r


【解决方案1】:

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

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

这完全是微不足道的东西。

【讨论】:

  • 我确实说过这可能是微不足道的。无论如何,谢谢。
【解决方案2】:

我假设您已经使用 read.csv()read.table() 函数在 R 中导入数据。(您可以通过 ? 直接在 R 中获得帮助,例如 ?read.csv

所以通常情况下,您有一个 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 时发生在我身上

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-04
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-13
    相关资源
    最近更新 更多