Python 将函数传递给fillna()
我有一个数据集,包含2015年和2016年不同建筑的数据及其位置信息。 像这样: 正如我们所看到的,对于同一个OSEBuildingID,它们的大多数信息都是可用的,并且都是相同的,但是,在某些列中存在NaN。因此,我们可以使用相同BuildingId的值来填充这些值。 我试过:Python 将函数传递给fillna(),python,pandas,dataframe,fillna,Python,Pandas,Dataframe,Fillna,我有一个数据集,包含2015年和2016年不同建筑的数据及其位置信息。 像这样: 正如我们所看到的,对于同一个OSEBuildingID,它们的大多数信息都是可用的,并且都是相同的,但是,在某些列中存在NaN。因此,我们可以使用相同BuildingId的值来填充这些值。 我试过: df.groupby('OSEBuildingID')['LargestPropertyUseTypeGFA'].transform(lambda group: group.fillna(group.mode()))
df.groupby('OSEBuildingID')['LargestPropertyUseTypeGFA'].transform(lambda group: group.fillna(group.mode()))
但一切都没有改变,有人能帮忙吗
非常感谢试试:
df_plus1['LargestPropertyUseTypeGFA']=df_plus1.groupby('OSEBuildingID')['LargestPropertyUseTypeGFA'].apply(lambda x: x.ffill().bfill())
解释为什么你的答案有效,为什么问题的方法无效。