所以我在Python中处理数据,我输出的是.csv文件 . 我希望R能够以这样一种方式读取.csv文件,它将它变成一个数据帧,其中一些列实际上是向量 .
这甚至是可能的,我将如何格式化.csv以便这可能发生?谢谢!
您可以在r中读取csv,默认情况下它将是一个数据帧:
data<-read.csv("nameOfCSVFile.csv", header=T)
然后,您可以按列对数据帧进行切片,并使用 $ 运算符将该列作为向量获取: data$header1 将数据帧的第一列作为向量返回 .
$
data$header1
只需确保您的.csv文件符合您的要求,即
header1,header2,etc. 1,2,etc. 4,5, etc. etc..
首先,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
实际上,数据帧是矢量的集合 . 如果你想以向量的形式获得数据,你必须使用子集函数:
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 的向量 .
X1
3 回答
您可以在r中读取csv,默认情况下它将是一个数据帧:
然后,您可以按列对数据帧进行切片,并使用
$
运算符将该列作为向量获取:data$header1
将数据帧的第一列作为向量返回 .只需确保您的.csv文件符合您的要求,即
首先,vectors只是一系列数据元素 . 并且data frames是等长矢量的列表 .
因此,您可以轻松地将数据帧的each column作为向量引用 .
实际上,数据帧是矢量的集合 . 如果你想以向量的形式获得数据,你必须使用子集函数:
因此,通过子集化,您可以获得数据帧列
X1
的向量 .