Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 使用数字随机分配而不替换_R_Random - Fatal编程技术网

R 使用数字随机分配而不替换

R 使用数字随机分配而不替换,r,random,R,Random,我有一个包含100行的数据集,我有一个由4个值组成的字符串(a,B,C,D),我想随机分配给这些行。但是,我想将A分配到30行,B分配到20行,C分配到10行,D分配到40行。我该怎么办 df <- data.frame(ID=c(1:100)) values <- c("A", "B", "C", "D") df这里有两个选项。第一个函数可能会将值赋给df中的一列。这并不能保证A、B、C、D各有30、20、10和40个。相反,预期会有 df$values <- sample

我有一个包含100行的数据集,我有一个由4个值组成的字符串(
a
B
C
D
),我想随机分配给这些行。但是,我想将
A
分配到30行,
B
分配到20行,
C
分配到10行,
D
分配到40行。我该怎么办

df <- data.frame(ID=c(1:100))
values <- c("A", "B", "C", "D")

df这里有两个选项。第一个函数可能会将值赋给
df
中的一列。这并不能保证A、B、C、D各有30、20、10和40个。相反,预期会有

df$values <- sample(values, nrow(df), FALSE, prob = c(.3,.2,.1.,.4))
df$values[sample(1:nrow(df), nrow(df), FALSE)] <- rep(values, c(30,20,10,40))