在pandas中*not*重置groupby索引的用例是什么

2024-06-02 06:34:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在熊猫DataFrame实例上使用groupby时,我从未使用过as_index=Falsereset_index()。我实在想不出我为什么不这么做。因为我的行为不是pandas默认值(事实上,因为groupby索引根本就存在),所以我怀疑pandas的某些功能我没有利用

有人能描述一下不重置索引会有好处的情况吗


Tags: 实例功能false利用dataframepandasindexas
1条回答
网友
1楼 · 发布于 2024-06-02 06:34:40

在执行groupby/agg操作时,很自然地会将结果视为从groupby键到聚合标量值的映射。如果我们使用的是纯Python,dict将是保存从键到值的映射的自然数据结构。因为我们使用的是熊猫,所以一系列的数据结构是自然的。它的索引将保存键,序列值将是聚合的标量。如果每个键有多个聚合值,那么要使用的自然数据结构将是数据帧

在索引而不是列中保留键的优点是,基于索引标签查找值是一个O(1)操作,而基于列中的值查找值是一个O(n)操作

由于groupby/agg操作的结果自然适合于以groupby键作为索引的序列或数据帧,并且由于索引具有这种特殊的快速查找属性,因此在默认情况下最好以这种形式返回结果

相关问题 更多 >