我有一个列表向量,如下例所示:
library(tidyverse)
z <- tribble(
~x,
c(10, 10, 64),
c(22, 22),
c(5, 9, 9),
c(55, 55),
c(76, 65)
)
我正在尝试减少每个列表以仅包含具有唯一值的案例。这是我正在寻找的输出:
y <- tribble(
~x,
c(10, 64),
c(22),
c(5, 9),
c(55),
c(76, 65)
)
当然,我不能发布实际输出,必须将其作为本示例的新数据集写出来,否则它看起来像这样:
# A tibble: 5 x 1
x
<list>
1 <dbl [3]>
2 <dbl [2]>
3 <dbl [3]>
4 <dbl [2]>
5 <dbl [2]>
最佳答案
我们可以使用 map
遍历 list
并应用 unique
library(dplyr)
library(purrr)
z %>%
mutate(x = map(x, unique))
在 base R
中,它将是
z$x <- lapply(z$x, unique)
关于从 R 中向量中的列表中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59672750/