数据科学-pandas的分组和聚合

目录

导入

分组和聚合 

索引和复合索引 

 总结


导入

现在我们有一组关于全球星巴克店铺的统计数据,如果我想知道美国的星巴克数量和中国的哪个多,或者我想知道中国每个省份星巴克的数量的情况,那么应该怎么办?

思路:遍历一遍,每次加1 ???

import pandas as pd
import numpy as np

file_path = "./starbucks_store_worldwide.csv"

df = pd.read_csv(file_path)
# print(df.head(1))
# print(df.info())
grouped = df.groupby(by="Country")
print(grouped)

# #DataFrameGroupBy
# #可以进行遍历
for i,j in grouped:
   print(i)

数据来源:https://www.kaggle.com/starbucks/store-locations/data

pandas中类似的分组的操作我们有很简单的方式来完成

df.groupby(by="columns_name")

import pandas as pd
import numpy as np

file_path = "./starbucks_store_worldwide.csv"

df = pd.read_csv(file_path)
grouped = df.groupby(by="Country")
print(grouped)


country_count = grouped["Brand"].count()
print(country_count)
print(country_count["US"])
print(country_count["CN"])

#统计中国每个省店铺的数量
china_data = df[df["Country"] =="CN"]

grouped = china_data.groupby(by="State/Province").count()["Brand"]

print(grouped)

那问题来了,调用groupby方法之后返回的是什么内容?

分组和聚合 

grouped = df.groupby(by="columns_name")

grouped是一个DataFrameGroupBy对象,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值