我想为数据框中的所有元素分配一个随机区域。
假设数据框具有以下结构:
df:
age-height-nation - zone
13,'tall','American', -
.....
11,'tall','S.american', -
我希望填充[zone]列,作为区域的可能值(' A',' B'' C')。每个区域的概率各不相同。例如:
prob(A)=0.1
prob(B)=0.3
prob(C)=0.6
我怎样才能为df中的所有元素分配区域,如上所述是概率?
提前致谢,p。
答案 0 :(得分:1)
这应该这样做:
df$zone <- sample(LETTERS[1:3], nrow(df), replace = TRUE, prob = c(0.1, 0.3, 0.6))
您可以将LETTERS[1:3]
替换为c("A", "B", "C")
或您想要的任何字符串。