从 csv 文件列表中检索指定列以在 R 中创建数据数据框

标签 r

我有一种情况,我需要从每个 csv 文件(总文件数 = 40)中获取一列(或一个变量),我的最终结果应该有一个包含 40 列相同变量的数据框。 我通过使用这个网站尽了最大的努力,这是我到目前为止所做的:

$#*******************************************
theFiles <- list.files(pattern=glob2rx('*.csv'))
datafile<- lapply(theFiles,read.csv, header= T, sep = ",")

rain<- vector()
head(theFiles)
All<- for (i in 1:length(datafile)) {
  #do stuff here
  data_from_csv <- as.data.frame(datafile[i])
  rain <- list(rain, data_from_csv[,8]) 
# extract column no 8 from each file 
# if i use vector then its producing only one 
} 
#*****************************$

结果是一个列表(列表(列表(...值,结构和名称等,除了值之外不一定有意义。我无法检查维度,因为它是一个列表,我不能'不要更改为数据框,因为尽管我有 40 个文件,但只出现 2 个列表。 因此,我请求大家解决这个问题。 之所以进入不同的栏目是因为他们来自不同的地方。

干杯

最佳答案

尝试 sqldf 包中的 read.csv.sql 函数。它允许您直接从 csv 文件中选择特定的列。

data <- read.csv.sql(theFile, sql="select col8 from file")

关于从 csv 文件列表中检索指定列以在 R 中创建数据数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16320667/

相关文章:

r - 无法在 Mac OS X Lion 上安装 R 包 "Rgraphviz"

r - 如何在 sparklyr 中重新分区数据框

r - 如何在一张图中绘制 Gamma 分布的拟合图和实际图?

r - 错误条在 r 中的堆积条形图中位置不正确

R - 使用 with() 从数据帧创建新变量

r - 在 R 中使用 gsub 在子字符串周围插入点

r - 在 R 中模拟来自经度和纬度的地理数据

r - r-markdown 文档的在线编译器

r - 应用返回奇怪的结果

r - 为什么 is.null 为不存在的列表元素返回 false?