如何总结从分类列中获取随机值?

时间:2018-12-13 13:10:55

标签: r dataframe dplyr sample summarize

我有两种和一些价值。

values <- c(1,2,3,4,5,6,7,8,9,10)
spp <- c(rep("a",5), rep("b",5))
df <- data.frame(spp, values, stringsAsFactor = FALSE)

我想总结数据框,按这些种类分组。我的想法是总结,按物种获得随机值。我想运用dplyr的理念,做到这一点:

n.df <- df %>%
group_by(spp) %>%
summarise(value = sample(value))

但是sample函数不能在summarise中使用

有人可以解决吗?

1 个答案:

答案 0 :(得分:1)

由于您使用的是dplyr,因此也可以利用sample_n函数,即

library(dplyr)

df %>%
   group_by(spp) %>%
   sample_n(1)

给出,

# A tibble: 2 x 2
# Groups:   spp [2]
  spp   values
  <chr>  <dbl>
1 a          2
2 b          9