我想阅读300 * .csv格式的数组,丢弃第一行和第一列。我知道如果我在“read.csv”中使用“header = TRUE”,它就不会考虑第一行。例如:
mydta.without.first.row <- read.csv("C:\\Users\\Desktop\\myarray.csv",header=FALSE)
我是否可以使用任何论据并丢弃第一列?
答案 0 :(得分:4)
您可以在列表中加载300个数据集:
我首先将所有.csv文件放在一个目录中,然后:
gdir <- "dir-containing-your-300-files"
fn <- list.files(gdir, pattern="*.csv", full.names=F)
ldf <- lapply(fn, function(x) read.csv(x,header=F)[-1,-1])
您最终会得到一个包含300个data.frames的列表,而不包含第一行和第一列。每个列表元素都有一个名称(您的文件名)附加到它。
如果要在文件中编写新的data.frames(使用new.filename.csv作为文件名)。
mapply(write.table,x=ldf,file=paste("new",fn,sep="."),MoreArgs=list(row.names=F,col.names=F,sep=","))
这将写入新文件,因此您不会删除任何原始文件。 您可能需要调整命令以满足您的需要。