如何从R

时间:2015-07-10 22:52:23

标签: r csv dataframe

所以我在Python中处理的数据正在输出为.csv文件。我希望R能够以这样的方式读取.csv文件,使其成为一个数据帧,其中一些列实际上是向量。

这是否可能,我将如何格式化.csv以便可能发生这种情况?谢谢!

3 个答案:

答案 0 :(得分:7)

首先,vectors只是一系列数据元素。 data frames是等长矢量的列表。

因此,您可以轻松地将数据框的each column作为向量引用。

df <- read.csv('C:\\Path\\To\\DataFile.csv')

v1 <- df[[1]]  # by column number
v2 <- df[["col1"]]  # by column name
v3 <- df$col1  # by column name

答案 1 :(得分:0)

你可以在r中读取csv,默认情况下它将是一个数据帧:

data<-read.csv("nameOfCSVFile.csv", header=T)

然后,您可以按列对数据框进行切片,并使用$运算符将该列作为向量获取:data$header1将数据框的第一列作为向量返回。

确保您的.csv文件符合您的要求 即

header1,header2,etc.
     1,2,etc.
     4,5, etc.
     etc..

答案 2 :(得分:0)

实际上,数据框是矢量的集合。如果您希望以向量的形式获得数据,则只需使用子集函数:

df <- data.frame(matrix(rnorm(10), nrow=5))

 df$X1
## [1]  1.05376208  0.05020266  1.79204302 -1.73712344 -1.29208706
 is.vector(df$X1)
## [1] TRUE

因此,通过子集化,您可以获得数据框列X1的矢量。