csv - Reading specific column of multiple files in R -
i have used following code read multiple .csv files in r:
assembly<-t(read.table("e:\\test\\exp1.csv",sep="|",header=false,col.names=c("a","b","c","d","assembly","f"))[1:4416,"assembly",drop=false]) top1<-t(read.table("e:\\test\\exp2.csv",sep="|",header=false,col.names=c("a","b","c","d","top1","f"))[1:4416,"top1",drop=false]) top3<-t(read.table("e:\\test\\exp3.csv",sep="|",header=false,col.names=c("a","b","c","d","top3","f"))[1:4416,"top3",drop=false]) top11<-t(read.table("e:\\test\\exp4.csv",sep="|",header=false,col.names=c("a","b","c","d","top11","f"))[1:4416,"top11",drop=false]) assembly1<-t(read.table("e:\\test\\exp5.csv",sep="|",header=false,col.names=c("a","b","c","d","assembly1","f"))[1:4416,"assembly1",drop=false]) area<-t(read.table("e:\\test\\exp6.csv",sep="|",header=false,col.names=c("a","b","c","d","area","f"))[1:4416,"area",drop=false]) data<-rbind(assembly,top1,top3,top11,assembly1,area) so entire data in folder "test" in e drive. there simpler way in r read multiple .csv data couple of lines of code or sort of function call substitute has been made above?
(untested code; no working example available) try: use list.files function generate correct names , use colclasses argument read.csv throw away first 4 columns (and since vector recycled alss throw away 6th column):
lapply(list.files("e:\\test\\", patt="^exp[1-6]"), read.csv, colclasses=c(rep("null", 4), "numeric"), nrows= 4416) if want returned dataframe, wrap data.frame around it.
Comments
Post a Comment