跨多个csv文件应用关于列号的公式

时间:2016-07-28 02:04:21

标签: r excel csv

我已经为10个csv文件分别找到了所有列的平均值。现在我必须比较所有列的avg值,然后找到相对于列号的最小平均值。 我有10个csv文件,每个文件有80列。

myfunction<-function(filename)
{
dat<-read.csv(file=filename,header=FALSE)
avg_per_column<-apply(dat,2,mean)
min_average_value<-min(avg_per_column) 

这使我在所有列中都达到最小值。我希望所有文件中第2列的avg最小

dev.new(plot(min_average_value))
}

##如何在所有文件中为每列应用查找min?示例 - 找到File1-column2平均值与File2-column2平均值相对于File3-column2平均值的最小值等等。**必须在所有列中找到最小值并绘制它。

filelist <-list.files(pattern="myfilename",full.names=TRUE)

for (i in filelist)    
{
  dev.new(myfunction(i)
}

1 个答案:

答案 0 :(得分:0)

试试这个

数据

df1 <- data.frame(a=runif(10),b=rnorm(10))
df2 <- data.frame(a=rnorm(15),b=runif(15))
lists <- list(df1,df2)

计算所有文件的mean

m <- matrix(rapply(lists,mean),byrow = TRUE,ncol = ncol(df1))
colnames(m)=colnames(df1)

因此,每列minimum的{​​{1}}覆盖所有文件

average