我想将一些选定的标称值随机分配给行。例如:
我有三个标称值["apple", "orange", "banana"]
。
在将这些值随机分配给行之前:
**Name Fruit**
Jack
Julie
Juana
Jenny
Christina
Dickens
Robert
Cersei
将这些值随机分配给行后:
**Name Fruit**
Jack Apple
Julie Orange
Juana Apple
Jenny Banana
Christina Orange
Dickens Orange
Robert Apple
Cersei Banana
如何使用pandas数据框来做到这一点?
答案 0 :(得分:3)
您可以将pd.np.random.choice
与您的值一起使用:
vals = ["apple", "orange", "banana"]
df['Fruit'] = pd.np.random.choice(vals, len(df))
>>> df
Name Fruit
0 Jack apple
1 Julie orange
2 Juana apple
3 Jenny orange
4 Christina apple
5 Dickens banana
6 Robert orange
7 Cersei orange
答案 1 :(得分:1)
您可以在熊猫中创建一个DataFrame,然后使用numpy分配随机选择
ex2 = pd.DataFrame({'Name':['Jack','Julie','Juana','Jenny','Christina','Dickens','Robert','Cersei']})
ex2['Fruits'] = np.random.choice(['Apple','Orange','Banana'],ex2.shape[0])