假设我有一个df,
<preference name="phonegap-version" value="cli-6.X.X" />
我想将{1}列的第1和第2列随机分配到每一行。
此列中数字1的百分比为60%,2为40%。
但是组列不会更改数据框的顺序。
df = data.frame(matrix(rnorm(20), nrow=10))
df$group <- rep(NA,nrow(df)) # add one col
我怎样才能以优雅的方式使用R?
答案 0 :(得分:2)
您可以使用sample()
随机选择带有权重的数字。如果您希望平均数字具有特定分布,则可以使用
df$group <- sample(1:2, nrow(df), replace=T, prob=c(.6, .4))
如果您需要&#34;确切&#34;,您可以使用
num1 <- round(nrow(df)*.6, 0)
df$group <- sample(c(rep(1, num1), rep(2, nrow(df)-num1)))