gpt4 book ai didi

python - 忽略非数值的 Pandas dataframe groupby sum

转载 作者:行者123 更新时间:2023-11-28 22:18:15 24 4
gpt4 key购买 nike

我有一个如下所示的数据框。 “LATENCY”列同时包含数字和“NA”字符,这使得 groupby() 变得复杂。

    DEVICE       START_PRICE   LATENCY
0 ab.fxx.in 500 NA
1 ab.fxx.in 500 1
2 ab.fxx.in 500 5
3 kddo.fxx.in 500 NA
4 kddo.fxx.in 500 5
5 kddo.fxx.in 533 3
6 kddo.fxx.in 533 NA

我想通过绕过“NA”值,按“DEVICE”值对“LATENCY”总和对数据帧进行分组。我应该得到如下输出。

DEVICE       
ab.fxx.in 6
kddo.fxx.in 8

最佳答案

在使用 groupby 之前,您可以将 LATENCY 系列转换为数字。

使用 errors='coerce' 确保您在转换不成功的地方有 NaN 值。当您使用 groupby.sum 时,pandas 通过忽略它们来优雅地处理它们。

df['LATENCY'] = pd.to_numeric(df['LATENCY'], errors='coerce')

res = df.groupby('DEVICE')['LATENCY'].sum().reset_index()

print(res)

DEVICE LATENCY
0 ab.fxx.in 6.0
1 kddo.fxx.in 8.0

关于python - 忽略非数值的 Pandas dataframe groupby sum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50657545/

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