r - 为组 R 生成随机数

标签 r random group-by numbers

我想为组生成相同的随机数。不幸的是,我的以下代码为每一行生成随机数。

randomised <- data %>%
  group_by(`ID`)%>%
  mutate(random = sample(1:100,n(), replace = TRUE))

感谢任何帮助。

最佳答案

您应该只从 sample 中选择 1 个值,该值将被回收用于组中的所有值。

library(dplyr)
data %>% group_by(ID)%>% mutate(random = sample(100,1))

或者在基础 R 中:

data$random <- with(data, ave(seq_along(ID), ID,FUN = function(x) sample(100, 1)))

关于r - 为组 R 生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60810076/

相关文章:

python - 如何将组添加到groupby

r - Shinyglide 条件按钮在第一个屏幕上不起作用

正则表达式(regexlookarounds)检测不在某些字符串之间的某个字符串(lookahead和lookbehind,单词不被单词包围)

r - 在线图周围插入边框

php - MySQL RAND() 多久可以使用一次?它使用/dev/random 吗?

PostgreSQL 在 Group By + In Statement 查询中返回额外的排序

r - 如何在 R 中使来自大型数据集的条形图更加清晰和简洁?

algorithm - 随机世界生成

arrays - 从数组中随机选择 N 个项目并在 BASH SCRIPT 中更新它

mysql - 使用 union mysql 选择查询进行分组