Pandas抱怨键错误,即使键存在

20jt8wwn  于 2023-11-15  发布在  其他
关注(0)|答案(1)|浏览(68)

我有一个类似这样的框架:
enter image description here
我想在每次'Run'中计算特定'Event'的示例。

all_run_counts=all_data_df.sort_values('Event',ascending=False).groupby('Run')
    result=all_run_counts["Event"].value_counts()

字符串
它给了我一个 Dataframe ,计算每个“运行”中的每个“事件”,到目前为止一切顺利。
如何我想只是过滤特定的事件类型和计数在每次运行该事件的示例,但当我用下面的脚本过滤,它不工作,并给我'事件'键错误时,显然'事件'已经作为一个列:

result.loc[result['Event'] == 'J']


这是什么原因呢?
我期待每个运行通过特定事件过滤,这样我就可以比较不同运行的相同事件类型的相应value_counts。

hgc7kmma

hgc7kmma1#

通过应用groupbyvalue_counts,您的result最终成为一个Series,而不是一个嵌套框,因此Event不是一个列,而是一个MultiIndex级别。
你需要reset_index

result = all_run_counts["Event"].value_counts().reset_index()

字符串
请注意,这里并不需要groupby,您可以直接使用value_counts

result = all_data_df.value_counts().reset_index()

相关问题