相关疑难解决方法(0)

熊猫数(不同)相当于

我使用pandas作为db替代品,因为我有多个数据库(oracle,mssql等),我无法为SQL等价物创建一系列命令.

我在DataFrame中加载了一些表,其中包含一些列:

YEARMONTH, CLIENTCODE, SIZE, .... etc etc
Run Code Online (Sandbox Code Playgroud)

在SQL中,要计算每年不同客户端的数量,请执行以下操作:

SELECT count(distinct CLIENTCODE) FROM table GROUP BY YEARMONTH;
Run Code Online (Sandbox Code Playgroud)

结果就是

201301    5000
201302    13245
Run Code Online (Sandbox Code Playgroud)

我怎么能在熊猫中做到这一点?

python group-by count distinct pandas

245
推荐指数
6
解决办法
31万
查看次数

Pandas 对数据框中不同的多列进行计数并按多列进行分组

我找到了答案 test2 = test_pd.groupby(by = ['ID'])['country','color'].nunique().reset_index()

我不知道当拉斐尔提供的链接没有回答问题时,为什么这个问题被标记为重复

我有一个包含 3 列的数据框:

   country    color    ID 
0  Germany    Red      12     
1  France     Red      13
2  US         Blue     11
3  France     Red      11
Run Code Online (Sandbox Code Playgroud)

如果我想找出 SQL 中每个 ID 的不同国家/地区和颜色的数量,那就是

select  ID
  , count(distinct(country)) as num_countries
  , count(distinct(color)) as num_color
from table_name
group by ID;
Run Code Online (Sandbox Code Playgroud)

结果看起来像这样

select  ID
  , count(distinct(country)) as num_countries
  , count(distinct(color)) as num_color
from table_name
group by ID;
Run Code Online (Sandbox Code Playgroud)

如何在 Pandas 中获得相同的结果?

python pandas pandas-groupby

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

pandas ×2

python ×2

count ×1

distinct ×1

group-by ×1

pandas-groupby ×1