【问题标题】:Inserting file names as column headers in a data frame在数据框中插入文件名作为列标题
【发布时间】:2020-02-07 15:20:04
【问题描述】:

我对 R 比较陌生,而且我无法找到特别适合我的问题的解决方案。

我创建了一个包含许多 csv 的列表。文件。每个文件的名称是 'yyyy-mm-dd' 的形式。 (文件中没有任何内容可以帮助我 标识文件的生成日期,只有文件名有 该信息。)

然后我读入 file_list 中的每个 .csv 文件并使用以下代码创建数据框:

for (i in 1:length(file_list)){
  aux<-readLines(paste(folder,file_list[i], sep = "")) %>%
    str_replace_all(" %", "") %>% 
    head(-2)
  aux2<-lapply(aux, function(x){drop_trailing_semicolon(x)}) %>% unlist()

  assign(file_list[i],read.csv(text=paste0(aux2, collapse="\n "), skip=5, header=TRUE, sep=";", dec=",",stringsAsFactors =FALSE, na.strings=c("-", " ")))
}

然后我将所有 data.frames 放入一个列表中。我需要比较不同日期的数据,但我无法确定收集数据的日期。因此,我想将文件名插入为相应文件中新列的标题。 他们是在我使用的函数中插入列的方法吗?甚至是完全不同的解决方案?

任何帮助将不胜感激。 先感谢您, 安妮卡

【问题讨论】:

标签: r dataframe rstudio


【解决方案1】:

你可以使用名字,在你的情况下names(listOfDataFrames) &lt;- file_list

a = list(1,2,3)
names(a) = c("first", "second", "third")

a$first
[1] 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-02
    • 2016-01-06
    • 1970-01-01
    • 2011-06-05
    相关资源
    最近更新 更多