r - 使用 tidyverse 在 R 中对数据进行分组和嵌套会产生错误
问题描述
我正在尝试为一些动物跟踪数据计算一些家庭范围估计。为此,amt 包的作者建议按 ID 分组,然后嵌套。
但是当我这样做时,我收到以下错误:
错误:该
groups
属性不是最后一列名为 的数据框.rows
。
这是一个重现错误的示例:
library(amt)
library(tidyverse)
data(deer)
mini_deer <- deer[1:100, ]
nesttrk <- mini_deer %>% group_by(burst_) %>%
nest()
nesttrk
总体目标是获得每个 ID 的归属范围大小估计(或在这种情况下为 burst_)
mini_deer %>% group_by(burst_) %>% nest(-burst_) %>%
mutate(mcparea = map(data, ~ hr_mcp(., levels = c(0.95)) %>% hr_area)) %>%
dplyr::select(burst_, mcparea) %>% unnest()
解决方案
我们可以先使用nest_by
自身mutate
,然后unnest
使用list
列
library(amt)
library(dplyr)
library(tidyr)
mini_deer %>%
nest_by(burst_) %>%
transmute(mcparea = list(hr_mcp(data, levels = 0.95) %>%
hr_area)) %>%
ungroup %>%
unnest(mcparea)
# A tibble: 5 x 4
burst_ level what area
<dbl> <dbl> <chr> <dbl>
1 1 0.95 estimate 180927.
2 2 0.95 estimate 1886603.
3 3 0.95 estimate 0
4 4 0.95 estimate 0
5 5 0.95 estimate 14476.
推荐阅读
- apache-spark - RDD and PipelinedRDD type
- javascript - 在threejs中的特定对象和相机之间隐藏对象
- c# - 使用like在查询中获取多个值
- javascript - C:\Program Files\Docker Toolbox\docker.exe:引用格式无效:存储库名称必须为小写
- django - drf-yasg 自定义 SwaggerUIRenderer
- bash - 将目录文件复制到另一个目录的问题
- dht - 为什么使用无跟踪器下载时 DHT 找不到资源?
- javascript - 当我使用具有匿名功能的外部 ja 文件时,我收到 Uncaught TypeError: Cannot read property 'addEventListener' of null
- c# - 派生对象映射的奇怪 Automapper 行为
- r - 基于共享组值的新因子列 [R]