r语言 - 如何绘制列表 A 中已经包含在列表 B 中的一列的数据



我有一个提取数据并在R中将它们一起列出的问题。

我有 24 个文件:最多 1.out 24.out 个。所有 24 个文件都包含相同的 5 列,我想提取每个文件的第 5 列,然后将所有 24 个文件的第 5 列直方图在一起。

temp = list.files(pattern="*.out")  
for (i in 1:length(temp)) assign(temp[i], read.table(temp[i], header = TRUE))

使用此命令读取文件,然后我了解temp[1]将包含第一个文件名,但如何进入文件并提取第 5 列。我试过了:

file <- for (i in 1:length(temp)) assign(temp[i], read.table(temp[i[[5]]], header = TRUE))

显然,这是不正确的。提取所有第 5 列后,如何一次直方所有列。

您可以遍历文件、读取文件、提取第五列、将它们存储在向量中,然后应用直方图,而不是将每个表分配给一个变量:

temp = list.files(pattern = "*.out")
hist(sapply(temp, function(fileName) read.table(fileName, header = TRUE)[5]))

最新更新