熊猫:groupby后如何获得特定的组? [复制]

Posted

技术标签:

【中文标题】熊猫:groupby后如何获得特定的组? [复制]【英文标题】:Pandas: how to get a particular group after groupby? [duplicate] 【发布时间】:2014-05-07 07:18:06 【问题描述】:

我想按名为“A”的列对数据框进行分组,并检查特定组。

grouped = df.groupby('A', sort=False)

但是,我不知道如何访问一个组,例如,我希望这样

grouped.first() 

会给我第一组

或者

grouped['foo'] 

会给我A=='foo'所在的组。

但是,Pandas 不是这样工作的。

我在网上找不到类似的例子。

【问题讨论】:

将其标记为重复意味着将来其他用户的搜索会更好:) ***.com/help/duplicates 【参考方案1】:

试试:grouped.get_group('foo'),这就是你需要的。

【讨论】:

【参考方案2】:
from io import StringIO # from StringIO... if python 2.X
import pandas
data = pandas.read_csv(StringIO("""\
area,core,stratum,conc,qual
A,1,a,8.40,=
A,1,b,3.65,=
A,2,a,10.00,=
A,2,b,4.00,ND
A,3,a,6.64,=
A,3,b,4.96,=
"""), index_col=[0,1,2])

groups = data.groupby(level=['area', 'stratum'])
groups.get_group(('A', 'a')) # make sure it's a tuple

                    conc qual
area core stratum            
A    1    a         8.40    =
     2    a        10.00    =
     3    a         6.64    =

【讨论】:

以上是关于熊猫:groupby后如何获得特定的组? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何计算满足特定条件的熊猫 groupby 的值

熊猫系列的部分总和

从熊猫数据框中的组内选择特定行

groupby 并获得出现率最高的熊猫条目[重复]

Groupby 并根据熊猫数据框中的其他列比较/过滤特定组

如何总结与数据框中特定 id 相关的所有值? [复制]