我有一个数据集,其中的列缺少值2439。 但是缺失值使得特定索引具有一些缺失值和一些填充值,如下所示(比较列“ Item_Identifier”和“ Item_Weight”)
如果仔细查看特定的item_identifier,则item_weight中缺少值。像这样,还有更多的Item_Identifier缺少值。有什么方法可以使用python我们只填充item_weight的缺失值吗?
答案 0 :(得分:0)
您可以将表格变成pandas DataFrame,然后df['item_weight'].fillna(15.5, inplace=True)
答案 1 :(得分:0)
可复制的示例:
df = pd.DataFrame({'col1': ['a', 'a', 'b','b', 'b', 'c'],
'col2': [10, np.nan, np.nan, np.nan, 20, 30]})
col1 col2
0 a 10.0
1 a NaN
2 b NaN
3 b NaN
4 b 20.0
5 c 30.0
您可以使用col1
对agg
和first
进行分组
vals = df.groupby('col1').agg('first')
col2
col1
a 10.0
b 20.0
c 30.0
然后只使用相同的索引和fillna()
来匹配和填充值
df = df.set_index('col1').fillna(vals).reset_index()
col1 col2
0 a 10.0
1 a 10.0
2 b 20.0
3 b 20.0
4 b 20.0
5 c 30.0