如何在 R 中的更多数据集上应用相同的函数(使用文件名)
How to apply the same functions (which use the files' names) on more datasets in R
我是 R 的新手 (如果您知道 R 中一些不错的在线课程,我会很高兴得到任何推荐) 我正在尝试应用相同的集合对许多数据集进行统计分析的函数(这里是我的数据集的一部分的示例。)
这是我个人的做法
ims.no3.1.csv <- read.csv("M:\blabla\datasetname1.csv", sep=",")
ims.no3.non0.1 <- filter_if(ims.no3.1.csv, is.numeric, all_vars((.) != 0))
ims.no3.1 <- data.frame(value = rep(ims.no3.non0.1$bin.start, ims.no3.non0.1$count))
basicStats(ims.no3.1)
h.ims.no3.1 <- hist(ims.no3.1$value, breaks = 400, ylim = c(0,400),xlim=c(0,3), xlab = "lifetime (ns)", main = "Histogram of ims+no3_1")
所以我试图创建自己的函数,然后用“lapply”应用它,但我不知道如何处理我必须使用的名称(至少对于“rep ”和“filter_if”函数)
在此先感谢您的帮助!
如果我理解你的问题,你想对多个数据集执行相同的分析。下面是一个简单的例子,我在我的工作目录中找到了一组数据集的维度:
setwd("YourPath:/")
all<-list.files(pattern = ".csv") # using a list of my csv files
# analyze each file in list
# e.g. What are the dimensions of these files?
a<-list()
for (i in 1:length(all)){ # for each of the csv files in the list..
message("i=", all[i])
a[[i+1]]<-dim(read.csv(all[i])) # compute the dimensions and write to list
print(a) # print the result
}
上面的这个循环将打印我工作目录中数据集的维度(行和列)。您可以适应计算均值、总和、绘图或编写 RMD 文件等。
我是 R 的新手 (如果您知道 R 中一些不错的在线课程,我会很高兴得到任何推荐) 我正在尝试应用相同的集合对许多数据集进行统计分析的函数(这里是我的数据集的一部分的示例。)
这是我个人的做法
ims.no3.1.csv <- read.csv("M:\blabla\datasetname1.csv", sep=",")
ims.no3.non0.1 <- filter_if(ims.no3.1.csv, is.numeric, all_vars((.) != 0))
ims.no3.1 <- data.frame(value = rep(ims.no3.non0.1$bin.start, ims.no3.non0.1$count))
basicStats(ims.no3.1)
h.ims.no3.1 <- hist(ims.no3.1$value, breaks = 400, ylim = c(0,400),xlim=c(0,3), xlab = "lifetime (ns)", main = "Histogram of ims+no3_1")
所以我试图创建自己的函数,然后用“lapply”应用它,但我不知道如何处理我必须使用的名称(至少对于“rep ”和“filter_if”函数)
在此先感谢您的帮助!
如果我理解你的问题,你想对多个数据集执行相同的分析。下面是一个简单的例子,我在我的工作目录中找到了一组数据集的维度:
setwd("YourPath:/")
all<-list.files(pattern = ".csv") # using a list of my csv files
# analyze each file in list
# e.g. What are the dimensions of these files?
a<-list()
for (i in 1:length(all)){ # for each of the csv files in the list..
message("i=", all[i])
a[[i+1]]<-dim(read.csv(all[i])) # compute the dimensions and write to list
print(a) # print the result
}
上面的这个循环将打印我工作目录中数据集的维度(行和列)。您可以适应计算均值、总和、绘图或编写 RMD 文件等。