在DataFrame中使用可能存在的值填充缺失值?

3

我有一个航空数据集,正在尝试清理。 NumEngines 特征存在一些缺失值,但是在数据框的其他地方可以推导出某些缺失值(并非总是如此)。以下是我的数据集的迷你示例,以说明这两种情况。请注意,第一个Cessna条目可用于填充第二个条目,但对于Piper则不是这种情况。

df = pd.DataFrame()
df["Make"] = ["Cessna","Piper","Cessna","Boeing"]
df["Model"] = ["Citation","PA32RT","Citation","737-300"]
df["NumEngines"] = [2,None,None,2]

如何使生成的DataFrame如下:
     Make     Model  NumEngines
0  Cessna  Citation         2.0
1   Piper    PA32RT         NaN
2  Cessna  Citation         2.0
3  Boeing   737-300         2.0
1个回答

3

我敢打赌 transform('first') 可以再次在这里实现:

df.groupby(['Make', 'Model']).transform('first')
Out[179]: 
   NumEngines
0         2.0
1         NaN
2         2.0
3         2.0

参数“first”是用来做什么的? - acme_student17
获取子组的第一个非 NA 值。 - Zeugma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接