我使用了group by pandas的函数,然后我试图通过将键传递给get_groups来使用pandas的get_group函数单独检索每个分组数据帧,我遇到了一个错误。
因为一切都是基于库,我不知道为什么我得到错误
data_grouped_by_common_columns=complete_df.groupby(common_columns)
final_df=pd.DataFrame()
print(data_grouped_by_common_columns.groups.keys())
for eachvalue in data_grouped_by_common_columns.groups.keys():
grouped_df = data_grouped_by_common_columns.get_group(eachvalue)
print(grouped_df)
i收到以下错误:
File "C:Userssanalamaanaconda3libsite-packagespandascoregroupbygroupby.py", line 811, in get_group
raise KeyError(name)
KeyError: ('accesslog', 'fa_ha', 'bi_server', nan)
因为我没有做太多的编码,它只是使用pandas的函数,我无法调试为什么会出现这个错误,因为组是由库本身创建的,我正在尝试使用库(存在一个)检索分组数据框。这是因为nan值吗?
我找到了问题所在。我的数据集在一个列类别中具有nan
值,并且我在groupby
函数中使用该列,因此分组正在工作,但由于nan
值,使用get_group
检索数据不工作。我只是把所有的nan
值重命名为Not applicable
,同样的代码工作得很好。