【发布时间】:2020-01-20 22:37:04
【问题描述】:
我有一个包含一些重复条目的数据集,我想将其更改为仅包含唯一的值组合,其中 dup_num 列表示重复条目的数量,dup_rows 列表示哪些行包含重复项数据。
我实现了一个基于 Finding duplicate observations of selected variables in a tibble 的解决方案,但是当将包含行号列表的列中的数据强制转换为字符向量时,它会引发一堆警告。现在没问题,但我想用 DT 和 Shiny 显示这些数据,警告是这个应用程序的问题。
library(tidyverse)
df <- tibble(episode = 1:30,
day = rep(c("Mon", "Wed", "Fri"), 10),
name = rep(c(
"Moe", "Larry", "Curly", "Shemp", "extra"
), 6))
chr_dups <- as_mapper( ~ str_c(.x) %>%
str_remove_all("[c\\(\\)]"))
df %>%
nest(episode, .key = "dups") %>%
mutate(dup_num = map_dbl(dups, nrow),
dup_rows = map_chr(dups, chr_dups))
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> Warning in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE):
#> argument is not an atomic vector; coercing
#> # A tibble: 15 x 5
#> day name dups dup_num dup_rows
#> <chr> <chr> <list> <dbl> <chr>
#> 1 Mon Moe <tibble [2 x 1]> 2 1, 16
#> 2 Wed Larry <tibble [2 x 1]> 2 2, 17
#> 3 Fri Curly <tibble [2 x 1]> 2 3, 18
#> 4 Mon Shemp <tibble [2 x 1]> 2 4, 19
#> 5 Wed extra <tibble [2 x 1]> 2 5, 20
#> 6 Fri Moe <tibble [2 x 1]> 2 6, 21
#> 7 Mon Larry <tibble [2 x 1]> 2 7, 22
#> 8 Wed Curly <tibble [2 x 1]> 2 8, 23
#> 9 Fri Shemp <tibble [2 x 1]> 2 9, 24
#> 10 Mon extra <tibble [2 x 1]> 2 10, 25
#> 11 Wed Moe <tibble [2 x 1]> 2 11, 26
#> 12 Fri Larry <tibble [2 x 1]> 2 12, 27
#> 13 Mon Curly <tibble [2 x 1]> 2 13, 28
#> 14 Wed Shemp <tibble [2 x 1]> 2 14, 29
#> 15 Fri extra <tibble [2 x 1]> 2 15, 30
由reprex package (v0.3.0) 于 2019 年 9 月 19 日创建
我很确定问题出在as_mapper()。
以下是具有代表性玩具数据的代表。小标题描述了三个傀儡中的一些剧集、剧集的播出日期以及剧集的主角角色。
谢谢!
【问题讨论】: