"List of excel files is read in as list of lists"的意思是:“将excel文件的列表读入为列表的列表。”

28 浏览
0 Comments

"List of excel files is read in as list of lists"的意思是:“将excel文件的列表读入为列表的列表。”

这个问题已经有答案了:

使用方括号 [ ] 和双方括号 [[ ]] 访问列表或数据框元素的区别

我有一个包含332个Excel文件的目录,我正在以下面的方式将它们读入R中:

list_files <- list.files(path = "C:/Users/mslomka/Documents/R/Datasets/Week 2", pattern = ".csv")
read_files <- lapply(list_files, read.csv)

然而,当我对read_files列表进行子集操作时,所有的组件都是列表而不是数据框/矩阵(考虑到它们是Excel文件应该是数据框/矩阵)。

我想要 (a) 将所有的Excel文件读入数据框,或者 (b) 创建一个循环将每个列表转换为数据框。

我已经尝试了几种方法进行 (b),但没有一种方法可用,例如lapply(read_files, as.data.frame)。 我仅仅将单个列表转换为数据框,例如通过as.data.frame(read_files [1])

任何帮助将不胜感激!

admin 更改状态以发布 2023年5月23日
0
0 Comments

如果我正确理解的话,这将给你一个列表的列表:

read_files <- lapply(list_files, read.csv)

read.files[[i]]将返回一个列表。

你还通过执行lapply(read_files, as.data.frame)将每个[[i]]列表转换为数据帧。

现在,你是否想要创建一个包含来自read_files中每个数据框的所有信息的数据框呢?如果是这样,这将完成任务:

df <- do.call(rbind, read_files)

这是你想要的吗?

0
0 Comments

这里有一些有用的信息(点击这里),加上这张有意义的图片来自Twitter

enter image description here

0