我有这样一个 Dataframe :
library(tidyverse)
df = tibble(AOI = c('NA', 'NA', 'NA', 'NA', 'NA', 'EA', 'EA'),
Values = c(-1, -1, 0, 1, 1, -1, 0))
df = df %>% group_by(AOI, Values) %>% tally()
AOI Values n
<chr> <dbl> <int>
EA -1 1
EA 0 1
NA -1 2
NA 0 1
NA 1 2
我希望确保每个唯一AOI都存在所有值-1、0和1。到目前为止,EA
组缺少1。我希望使用"我相信complete
"来确保自动添加缺少的三个值中的任何一个,并使用0填充n
。
我正在尝试这个:
df = df %>% complete(AOI, Values, fill = list(n = 0))
但这失败于:
Error in `dplyr::summarise()`:
! Problem while computing `..1 = complete(data = dplyr::cur_data(), ...,
fill = fill, explicit = explicit)`.
ℹ The error occurred in group 1: AOI = "EA".
Caused by error:
! object 'AOI' not found
我的预期输出如下:
AOI Values n
<chr> <dbl> <int>
EA -1 1
EA 0 1
EA 1 0
NA -1 2
NA 0 1
NA 1 2
编辑:
它不一定要完成这项任务,任何方式来获得所需的输出是罚款与我。
1条答案
按热度按时间vngu2lb81#
我想在不断地覆盖你的 Dataframe 几次之后,它可能产生了一个错误,也许是因为保存了一些意想不到的东西。
代码
输出