我想创建一个新列,其中每个值都是我的数据中该行其他值的随机子集。创建新列是其他列的随机子集
# Example data:
df <- data.frame(matrix(nrow = 57, ncol = 6)) %>%
mutate(
X1 = round(rnorm(n = 57, mean = 0, sd = 1), 1),
X2 = round(rnorm(n = 57, mean = 0, sd = 1), 1),
X3 = round(rnorm(n = 57, mean = 0, sd = 1), 1),
X4 = round(rnorm(n = 57, mean = 0, sd = 1), 1),
X5 = round(rnorm(n = 57, mean = 0, sd = 1), 1),
X6 = round(rnorm(n = 57, mean = 0, sd = 1), 1)
)
# my failed attempt at a new column
df %>%
rowwise() %>%
mutate(X7 = str_c(df[, sample(1:6, 3, replace = F)]), sep = ", ")
忘记'rowwise'和使用'样品(1:6,1,替换= F) '。只有一列不是3。顺便说一句,为什么'str_c'?你不想用数字填充'X7'吗?像这样你会有角色。 –
@RuiBarradas我希望X7的每个值都是来自其自己行的3个随机值的向量。 – Joe