【发布时间】:2015-05-05 12:41:33
【问题描述】:
我在 tmp 目录中有一个 .stat 文件的列表。
样本:
a.stat=>
abc,10
abc,20
abc,30
b.stat=>
xyz,10
xyz,30
xyz,70
等等
我需要查找所有 .stat 文件的摘要。
目前我正在使用
filelist<-list.files(path="/tmp/",pattern=".stat")
data<-sapply(paste("/tmp/",filelist,sep=''), read.csv, header=FALSE)
但是我需要对所有正在读取的文件应用摘要。或者只是在 n 个 .stat 文件中我需要第二列的摘要
使用
data<-sapply(paste("/tmp/",filelist,sep=''), summary, read.csv, header=FALSE) 不起作用,并给我带有类字符的摘要,这不是我想要的。
sapply(filelist, function(filename){df <- read.csv(filename, header=F);print(summary(df[,2]))}) 工作正常。然而,我的总体目标是找到任何一侧(离群值)超过 2 个标准偏差的值。所以我使用sd,但同时需要检查当前读取的文件中的所有值是否都在2SD范围内。
【问题讨论】:
-
sapply(filelist, function(filename){df <- read.csv(filename, header=F);print(summary(df[,2]))})? -
如果您需要第二列的摘要,
summary(sapply(lst, "[[", 2))