2024-04-25 06:38:23 发布
网友
我有一个名为df的Pandas数据帧:
col_A id name 0 4 1 n1 1 39 2 n1 2 49 3 n2 3 1 4 n2 4 0 5 n2
假设在按列名称分组后,对列id执行计数:
所以我得到了id每个name的不同计数。我明白了
name n1 2 n2 3
然后,如何对由count(显然不是列)获得的帧进行排序?我希望通过降序/升序计数对if进行排序,并且可能只检索满足某个where子句的计数(比如那些>;2)。在
返回的类型是Series,您可以使用参数sort或{a1}(如果运行的是0.17.0或更高版本的pandas),可以使用参数ascending=True对此调用sort或{a1}:
Series
sort
ascending=True
In [51]: counts = df.groupby(['name'])['id'].count() counts.sort_values(ascending=True) counts Out[51]: name n1 2 n2 3 Name: id, dtype: int64
可以通过传递布尔条件生成掩码来过滤序列:
面具是这样的:
In [53]: counts > 2 Out[53]: name n1 False n2 True Name: id, dtype: bool
返回的类型是
Series
,您可以使用参数sort
或{a1}(如果运行的是0.17.0或更高版本的pandas),可以使用参数ascending=True
对此调用sort
或{a1}:可以通过传递布尔条件生成掩码来过滤序列:
^{pr2}$面具是这样的:
相关问题 更多 >
编程相关推荐