r - 如何从带有数字指示的列表中获取R中的数据框
问题描述
如何将以下列表转换为数据框?我曾尝试使用 data.frame,但我得到了一个包含 1 个对象的数据框以及该对象行中的所有信息。
有没有办法捕获数字,以便我每行(两行,每页一个)和正确的标签(下面的第二个列表)获得正确的数据?
[[1]]
[[1]][[1]]
[1] "https://page1"
[[1]][[2]]
[1] 4534
[[1]][[3]]
[1] 3453
[[1]][[4]]
[1] 2343
[[1]][[5]]
[1] 0.2806075
[[1]][[6]]
[1] 0.4386998
[[2]]
[[2]][[1]]
[1] "https://page2"
[[2]][[2]]
[1] 9166
[[2]][[3]]
[1] 6294
[[2]][[4]]
[1] 698
[[2]][[5]]
[1] 0.1489971
[[2]][[6]]
[1] 0.1963775
list number two:
$columns
$columns[[1]]
[1] "event_url"
$columns[[2]]
[1] "page_views"
$columns[[3]]
[1] "unique_page_views"
$columns[[4]]
[1] "entries"
$columns[[5]]
[1] "bounce_rate_events"
$columns[[6]]
[1] "exit_rate"
解决方案
你可以这样做:
do.call(rbind, lapply(list1, function(x) setNames(as.data.frame(x), unlist(list2))))
#> event_url page_views unique_page_views entries bounce_rate_events exit_rate
#> 1 https://page1 4534 3453 2343 0.2806075 0.4386998
#> 2 https://page2 9166 6294 698 0.1489971 0.1963775
数据
list1 <- list(
list("https://page1", 4534, 3453, 2343, 0.2806075, 0.4386998),
list("https://page2", 9166, 6294, 698, 0.1489971, 0.1963775))
list2 <- list(columns = list("event_url", "page_views",
"unique_page_views", "entries",
"bounce_rate_events", "exit_rate"))
推荐阅读
- sql-server - 由于字段长度,在链接表上插入(从 MS Access 到 SQL Server)失败
- sql - 使用 LIKE 关键字了解索引性能
- google-apps-script - 从谷歌表到日历的时区差异
- html - 扩展引导页面内容的侧菜单行
- api-key - 使用 API 密钥在 Google Cloud Run 上获得 403 Forbidden
- javascript - Vue:是否可以导入仅适用于该组件的 js
- php - Laravel - 使用多态关系存储数据
- linq-to-sql - 如何计算 Entity Framework Core 中的特定列
- magnolia - 组件可用性的重复性限制
- python - 想要对 while 循环进行矢量化以提高性能(已更新)