r - 从R中的列表中自动提取多个数据框
问题描述
我有一个包含 52 个元素的列表。一半的列表元素是具有 6 列和不同行数的数据框。剩下的一半元素只是列表,每个都包含字符和整数元素。我想使用自定义函数从列表中获取所有数据框。理想情况下,我想从列表中提取所有数据帧作为具有唯一名称的单独对象。我尝试使用循环和 if/else 函数将其自动化,但没有成功。问题是,我需要自动化这个过程,因为我将生成更多包含 50 到 60 个元素的列表。任何建议将不胜感激。
解决方案
作为您的l
清单:
classes.in.list=lapply(l,class) # find classes in your list
idx=which(classes.in.list=="data.frame") # find indices of data.frames
mydfs=l[idx] # subset your list
data.table::rbindlist(mydfs,idcol=T) # fast rbind with ID column (install data.table library)
推荐阅读
- c# - StackOverflowException:“Exception_WasThrown”错误
- android - Android ExampleInstrumentedTest 运行失败并显示“测试框架意外退出”
- arrays - 要映射的对象数组
- php - 如何在laravel的mysql中插入摊销时间表
- python - 在 Python3 中将整数数组转换为二进制:“TypeError:只能转换整数标量数组?”
- c++ - 如何将 .dat 中的值分配给 C++ 中的矩阵?
- python - 我想将两个文本变量和文本添加到 tkinter 中的标签小部件
- javascript - 带有下拉问题的 mCustomScrollBar
- python - 如何在树视图中的选定项目内向上或向下移动焦点
- python - 将来自 google collab 的训练结果保存为 CSV