我需要City根據Country列填充列中的空值。如果國家相同,則應NaN使用該國家對應的頻繁城市名稱填充該值。
輸入:
ID City Country
0 New York USA
1 NaN USA
2 London UK
3 Mumbai IND
4 Sydney AUS
5 NaN AUS
6 Sydney AUS
7 Brisbane AUS
輸出:
ID City Country
0 New York USA
1 New York USA
2 London UK
3 Mumbai IND
4 Sydney AUS
5 Sydney AUS
6 Sydney AUS
7 Brisbane AUS
uj5u.com熱心網友回復:
想法是將可能的空字串替換為NaNs,然后將 groupNaN的值替換為第一個非s 值:
df['City'] = (df.groupby('Country')['City']
.transform('first'))
或向前和向后填充缺失值:
df['City'] = (df.groupby('Country')['City']
.transform(lambda x: x.ffill().bfill()))
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/366358.html
