【发布时间】:2021-11-16 02:04:00
【问题描述】:
我有一个数据集,我想将这个数据集的顺序随机化 100 次,每次都计算累积平均值。
# example data
ID <- seq.int(1,100)
val <- rnorm(100)
df <- cbind(ID, val) %>%
as.data.frame(df)
我已经知道如何使用 dplyr 中的函数“cummean()”计算累积平均值。
df2 <- df %>%
mutate(cm = cummean(val))
但是,我不知道如何将数据集随机化 100 次并将 cummean() 函数应用于数据帧的每次迭代。任何有关如何执行此操作的建议将不胜感激。
我意识到这可能通过循环或 tidyverse 来解决,我对任何一种解决方案都持开放态度。
此外,如果可能的话,我想包括一列,指示数据是从哪个迭代生成的(即随机化 #1、#2、...、#100),并包括“ID " 值,表示累积平均值中包含多少数据值。提前致谢!
【问题讨论】:
-
看看
sample函数help(sample)。
标签: r loops iteration tidyverse mean