r - 如何将列表的一部分写入一个数据框中?
问题描述
我想用 150 个光栅对象的频率编写一个 df(部分答案在: Count freq of multiple raster objects in R)
我已经创建了所有光栅文件的列表
spatial.tools::list.raster.files()
然后打电话
lapply(ls$raster,freq)
现在我有一个包含 150 个条目的列表,其中包含每个光栅文件的频率矩阵。
不过我只感兴趣$Band.1[,"count"])
。对于列表的单个条目,我可以为计数创建一个 df
as.data.frame(all[[1]]$Band.1[,"count"])
我的问题是:如何一次$Band.1[,"count"]
将列表中的所有 150 个写入单个 df ???
解决方案
我看你是新来的。如果您可以使您的问题可重现,其他人将更容易回答您的问题 - 查看这篇文章,了解如何制作一个很好的可重现示例。话虽如此,使用您的其他问题,这可能会为您提供所需的东西:
library(tidyverse)
list_of_results <- lapply(ls$raster,freq)
df_of_results <-
list_of_results %>%
map_df(~ data.frame(.))
df_of_results$count
如果tidyverse
andpurrr::map
函数不适合您,您还可以执行以下操作:
results <- unlist(lapply(list_of_results, function(x) x[, c("count")]))
推荐阅读
- python - django 模板中的“form.as_p”从何而来?
- twitter-bootstrap - 如何编辑源文件中未显示的 tempus-dominus (datetimepicker) 中的类?
- python - 在 Internet Explorer 中查看 html 时,Folium 弹出窗口不显示
- django - 如何从非媒体目录设置默认图像
- algorithm - 使用(递归)动态编程的交替子串
- php - 如何在同一个类上使用同名的静态方法和实例方法?
- git - 我怎样才能让 gitignore 应用于某个扩展,除了某个文件夹?
- c++ - MPI 和提升多精度/gmp
- javascript - 如何将 onclick 添加到 SVG 并渲染新的 EJS 模板
- netlogo - 如何让 Netlogo 的计时器停止几分钟?