【问题标题】:Change column name with file name of corresponding excel file用对应的excel文件的文件名更改列名
【发布时间】:2021-05-31 07:53:00
【问题描述】:

我在一个文件夹中有100个excel文件,我想将每个文件的第四列的名称更改为R中对应的文件名。

【问题讨论】:

    标签: r excel


    【解决方案1】:
    filenames <- list.files(pattern = '\\.xlsx', full.names = TRUE)
    
    lapply(filenames, function(x) {
      #Read the data
      data <- readxl::read_excel(x)
      #Change the 4th column with filename
      names(data)[4] <- tools::file_path_sans_ext(basename(x))
      #Write the data back
      writexl::write_xlsx(data, x)
    })
    

    【讨论】:

    • 非常感谢。如何修改这部分:writexl::write_xlsx(data, x) 有一个文件 .xls 而不是 .xlsx ?
    • writexl::write_xlsx(data, sub('xlsx$', 'xls', x))
    • 抱歉再次提问:不覆盖文件,是否可以创建一个新文件?
    • writexl::write_xlsx(data, sub('\\.xlsx$', '_new.xls', x))
    • 文件仍被覆盖。这种方法的问题是它会创建一个损坏的 excel 文件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-20
    • 1970-01-01
    相关资源
    最近更新 更多