我有70个CSV文件,它们具有与我要执行相同处理的相同列。 基本上,我要导入,清理,写入文件并删除所有变量,然后对下一个重复。因为每个都是0.5GB。
在不以有效方式迭代加载程序包的情况下该怎么做?
library(tidyverse)
setwd("~/R/R-3.5.1/bin/i386")
df <- read.csv(file.choose(), header = TRUE, sep = ",")
inds <- which(df$pc_no == "DELL")
df[inds - 1, c("event_rep", "loc_id")] <- df[inds, c("pc_no", "cust_id")]
df1 <- df[-inds, ]
write.csv(df1, "df1.csv")
rm(list=ls())
要做到这一点,我想我将使用这段代码,但不知道确切地在哪里使用它。 I.E如何执行上面的代码来做到这一点?
list.files(pattern="^events.*?\\.csv", full.names=TRUE, recursive=FALSE)
lapply(files, function(x) {
files <- function(df1)
})
答案 0 :(得分:1)
根据上述注释,您只需在将文件分配给对象(已定义为文件)后使用lapply遍历每个文件。
{('Q', 0): 'a', ('Q', 1): 'b', ('Q', 2): 'c'}
{('Q', 0): 'd', ('Q', 1): 'd', ('Q', 2): 'b', ('Q', 3): 'e', ('Q', 4): 'e', ('Q', 5): 'e', ('Q', 6): 'd', ('Q', 7): 'a'}