删除R中同一文件夹下多个csv文件中的某些行和列

删除R中同一文件夹下多个csv文件中的某些行和列,r,R,我有一大堆格式完全相同的文件,我想删除前六行和某些列(第2列到第8列、第12列到第16列、第18列到第23列,等等)。最好我也不希望处理后的文件覆盖原始文件。我很确定在R中有一种方法可以做到这一点,但只是还没有弄明白。有什么建议吗?提前谢谢 我认为您可以创建一个函数以.csv文件的形式导入数据集,在该函数中,您可以指定删除列,然后删除行,等等,并且您可以返回该数据 library(tidyverse) data_imp_fun<- function (path="C:/Users

我有一大堆格式完全相同的文件,我想删除前六行和某些列(第2列到第8列、第12列到第16列、第18列到第23列,等等)。最好我也不希望处理后的文件覆盖原始文件。我很确定在R中有一种方法可以做到这一点,但只是还没有弄明白。有什么建议吗?提前谢谢

我认为您可以创建一个函数以.csv文件的形式导入数据集,在该函数中,您可以指定删除列,然后删除行,等等,并且您可以返回该数据

library(tidyverse)
data_imp_fun<- function (path="C:/Users/xyz/Documents/data1.csv") # you can change path when u tried to import a data
{
file_path=(paste(Path))
data<-read_excel(file_path)
data<-data[,!names(data) %in% c("column2 name","column8 names",column16 name")]# this line will help you removing you desire columns just input the names of each column you #want to remove
data<-data[-c(1:6),] # this line will help you to remove first six rows
return(data)
}
库(tidyverse)

数据导入乐趣这些tidyverse代码可能会有所帮助

library(tidyverse)

files <- list.files(".", pattern = ".csv")

dat <- files %>% 
  map_dfr(
    ~ read_csv(.x) %>% 
      slice(7:nrow(.))
  ) %>% 
  select(-c(2:8, 12:16, 18:23))
库(tidyverse)
文件%
切片(7:nrow()
) %>% 
选择(-c(2:8,12:16,18:23))

谢谢!有没有办法循环浏览所有的文件?似乎我需要手动导入每个csv文件?在这种情况下,您必须为函数路径和文件名定义参数。您可以使用粘贴函数建立路径名,然后列出所有文件的名称,然后使用for循环或apply函数,您可以轻松导入每个csv文件,但也可以使用循环和应用函数
library(tidyverse)

files <- list.files(".", pattern = ".csv")

dat <- files %>% 
  map_dfr(
    ~ read_csv(.x) %>% 
      slice(7:nrow(.))
  ) %>% 
  select(-c(2:8, 12:16, 18:23))