0
說一個列的水果,我有57個香蕉,54個蘋果,和其他空值。 現在我想用fillna
填充空值,其概率爲57 /(57 + 54)概率爲香蕉,54 /(57 + 54)爲蘋果,我應該怎麼做?用概率填寫缺失值
Fruit
------
None
Banana
Fruit
Banana
....(with 57 banana, 54 apple, 10 None)
說一個列的水果,我有57個香蕉,54個蘋果,和其他空值。 現在我想用fillna
填充空值,其概率爲57 /(57 + 54)概率爲香蕉,54 /(57 + 54)爲蘋果,我應該怎麼做?用概率填寫缺失值
Fruit
------
None
Banana
Fruit
Banana
....(with 57 banana, 54 apple, 10 None)
設置
fruit = pd.Series(['banana'] * 57 + ['apple'] * 54 + [None] * 10, name='fruit')
使用pd.Series.sample
nullfruit = fruit.isnull()
fruit.loc[nullfruit] = fruit.dropna().sample(nullfruit.sum()).values
使用np.random.choice
和np.unique
nullfruit = fruit.isnull().values
u, c = np.unique(fruit.values[~nullfruit], return_counts=1)
fruit.loc[nullfruit] = np.random.choice(u, nullfruit.sum(), p=c/c.sum())
你能加樣品及所需的輸出? – jezrael