gpt4 book ai didi

python - 使用相似的行填充 python pandas 数据框中缺失的行

转载 作者:行者123 更新时间:2023-12-01 00:27:10 27 4
gpt4 key购买 nike

假设我有这种数据框:

Data:   Lat    Long   Postal Code
0 41 32 01556
1 32 31 01023
2 31 33 01023
3 NaN NaN 01023
4 33 42 01775
5 40 44 01999

如您所见,第 1、2、3 行具有相同的邮政编码。因此,为了填充 NaN,最好只使用这两行 (1,2) 的平均值。如何将其推广到大型数据集?

  • 对于纬度/经度中包含 NaN 数据的每一行,
    • 查找具有相同邮政编码的其他行
    • 然后计算平均值
    • 并用它来替换 NaN

最佳答案

IIUC,

groupby变换fillna()

我们首先选择数据帧的一部分,并使用 fillna 仅填充缺失值,我们不想覆盖任何现有数据。

然后,我们会根据您的要求利用 groupby 函数按邮政编码进行分组。

我们使用 transform 方法返回您的数据及其原始索引和长度。

我们将其分配给您的列并得到如下结果。

   df[["Lat", "Long"]] = df[["Lat", "Long"]].fillna(
df.groupby("Postal Code")["Lat", "Long"].transform("mean"))
print(df)
Data Lat Long Postal Code
0 0 41.0 32.0 1556
1 1 32.0 31.0 1023
2 2 31.0 33.0 1023
3 3 31.5 32.0 1023
4 4 33.0 42.0 1775
5 5 40.0 44.0 1999

关于python - 使用相似的行填充 python pandas 数据框中缺失的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58484153/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com