You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas中groupby后调用get_group(None)报KeyError的解决方法

问题解决方法

这是因为 pandas 的 groupby() 方法默认参数 dropna=True,会自动排除包含 None/NaN 的分组——哪怕原数据列里存在 None,默认分组后也不会保留这个组,所以调用 get_group(None) 会触发 KeyError。

不用转换 None 的解决方法有两种:

方法一:groupby 时设置 dropna=False

在分组时显式指定 dropna=False,保留包含 None 的分组,之后就能正常用 get_group(None) 获取目标数据:

import pandas as pd

# 示例DataFrame
df = pd.DataFrame({'A': [1, None, 2, None], 'B': [10, 20, 30, 40]})

# 保留None的分组
gb = df.groupby('A', dropna=False)
# 获取None对应的分组
none_group = gb.get_group(None)
print(none_group)

方法二:直接用布尔索引筛选

如果不需要完整的分组操作,直接通过布尔索引就能拿到所有 A 列为 None 的行,更简洁:

none_group = df[df['A'].isna()]

内容的提问来源于stack exchange,提问作者Marc Bacvanski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 11:35:13