批量导入数据的两种方法
pollutantmean = function(director, pollutant, id = 1:332)
{
setwd(“E:/clean/R_course”)
filenames = list.files(“specdata”)[id]
#temp = c()方法一,采用lapply,可以保留变量名;
temp = lapply(filenames, function(x) read.csv(file = paste(“specdata”,x, sep = “/”),
header = T, stringsAsFactors = F)[, pollutant])
temp2 = do.call(“c”, temp)方法二,采用for循环,不能保留变量名;
for(i in filenames) {
temp = c(temp, read.csv(file = paste(director,i, sep = “/”),
header = T, stringsAsFactors = F)[, pollutant])
}
return(mean(temp2, na.rm = T))
}
摘抄,设定导入变量的格式
filelist <- list.files(pattern=”.*.txt”)
datalist <- lapply(filelist, function(x) read.table(x, header=F))
datafr <- do.call(“rbind”, datalist)
假设你的文件时1.txt,内容是
1 0x33 a
2 0x44 b
3 0x14 c
则
dat <- read.table(“1.txt”, colClasses=c(“numeric”, rep(“character”, 2)))