pandas实战——对星巴克数据的分析ColdCode

importnumpyasnpimportpandasaspdstarbucks=pd.read_csv("D:\\directory.csv")print"数据的列标签如下:"printstarbucks.columnsprint"每列的数据类型:"printstarbucks.dtypesprint"文件行数:"printlen(starbucks.index)print"文件列数:"printstarbucks.columns.size输出:

数据的列标签如下:Index([u'Brand',u'StoreNumber',u'StoreName',u'OwnershipType',u'StreetAddress',u'City',u'State/Province',u'Country',u'Postcode',u'PhoneNumber',u'Timezone',u'Longitude',u'Latitude'],dtype='object')每列的数据类型:BrandobjectStoreNumberobjectStoreNameobjectOwnershipTypeobjectStreetAddressobjectCityobjectState/ProvinceobjectCountryobjectPostcodeobjectPhoneNumberobjectTimezoneobjectLongitudefloat64Latitudefloat64dtype:object文件行数:25600文件列数:13可以看到文件共有25600条数据,每条数据有13列。

要实现这个功能需要用到DataFrame.groupby()函数,相当于sql中的groupby。在本例中可以使用starbucks.groupby(["Country"])来对星巴克按国家分组,然后使用starbucks.groupby(["Country"]).size()求得每个国家有多少星巴克。

df=starbucks.groupby(["Country"]).size().reset_index()输出:

CountryAD1AE144AR108AT18AU22AW3AZ4BE19BG5BH21BN5BO4BR102BS10CA1468CH61CL96CN2734CO11CR11CW3CY10CZ28DE160DK21EG31ES101FI8FR132GB901...LU2MA9MC2MX579MY234NL59NO17NZ24OM12PA5PE89PH298PL53PR24PT11QA18RO27RU109SA102SE18SG130SK3SV11TH289TR326TT3TW394US13608VN25ZA3Length:73,dtype:int64然后我们将上一步的结果使用reset_index()方法封装成一个新的DataFrame,然后对这个DataFrame排序即可。

#根据每个国家的国家名和星巴克数量重建为一个DataFramedf=starbucks.groupby(["Country"]).size().reset_index()#查看df的前5行数据printdf.head()#修改列名(将“0”改为“Nums”)df.columns=["Country","Nums"]#按照星巴克数量由多到少对国家排序df.sort_values(by=["Nums"],ascending=False).head()输出:

Country00AD11AE1442AR1083AT184AU22CountryNums70US1360817CN273414CA146837JP123739KR993可以看到,美国的星巴克最多,有13608家,其次是中国、加拿大、日本、韩国。由于篇幅限制只显示了排序后的5行,可以去掉head()显示全部数据。

首先要在所有国家的数据中选择中国的数据,可以使用布尔索引实现这一目的:

#选择中国的数据df=starbucks[starbucks["Country"]=="CN"]#统计每个城市的星巴克数量df.groupby(["City"]).size()输出:

CityAdmiralty2CausewayBay5Central1Chaiwan1Changshu1Changzhou1FortressHill1Hangzhou2HongKong104Jiaxing2Jinhua1Kowloon19KowloonBay1KowloonTong1LantauIsland2Macau13MongKok2N.T.2Nanjing1Nantong4NewTerritories7Ningbo3QuarryBay3ShangHai2Shanghai2Shantin1Stanley1Suzhou3TaiKooShing1TinHau1...萧山市1蚌埠市1衡阳市3衢州市3襄樊市1襄阳市2西宁市3西安市40诸暨市2贵阳8贵阳市1连云港1连云港市3邢台市1邯郸1郑州市18重庆市41金华市11银川市2镇江市9长春市10长沙市26阳江市1青岛市28靖江市2鞍山市3马鞍山3高邮市1黄石市1龙岩市2Length:197,dtype:int64可以看到数据不是很规范,城市名称既有中文又有英文,而且上海被存储为ShangHai和Shanghai。对于上海的问题,我们将拼音全部改为小写即可;对于中文和拼音混用的问题,可以使用相应的python库(如库pinyin)将中文转换为拼音后作统计。首先安装库pinyin,如果是在命令行里运行的python,直接pipinstallpinyin,安装成功后importpinyin即可。我是在jupyternotebook里面写的,外部pip安装的模块无法导入,所以使用下面的方法(或者使用conda命令安装):

importpippip.main(['install','pinyin'])安装后导入并做相应的处理:

importpinyin#选择中国的数据df=starbucks[starbucks["Country"]=="CN"]#需要拷贝一下,不然会出现“AvalueistryingtobesetonacopyofaslicefromaDataFrame.”的警告df1=df.copy()#将城市名改为小写df1["City"]=df1["City"].apply(lambdax:x.lower())df2=df1.copy()#将汉字城市名改为小写拼音df2["City"]=df2["City"].apply(lambdax:pinyin.get(x,format="strip",delimiter="")[0:-3])#去掉“市”的拼音#统计每个城市的星巴克数量df2.groupby(["City"]).size()输出:

Cityadmira2anshan3bangbu1baoding3baoji1baotou4beihai1beijing234causeway5cent1chai1chang1changchun10changsha26changshu6changz1changzhou26chengde1chengdu98cixi5dali1dalian25danzhou1daqing2deyang2dezhou2dongguan31dongyang1dongying1fenghua2...yancheng6yangjiang1yangzhong1yangzhou12yanji1yantai8yichang4yinchuan2yingkou2yiwu2yixing3yuenl2yueyang2yuyao1zhangjia1zhangjiag1zhangjiagang1zhangzhou1zhanjiang4zhaoqing1zhengzhou18zhenjiang9zhongqing41zhongshan11zhous1zhoushan5zhuhai14zhuji2zhuzhou2zibo5Length:192,dtype:int64这里使用到了DataFrame.apply(func)方法,该方法将函数func应用到整个DataFrame上,也可以通过指定axis参数来指定每一行或每一列的数据应用函数func。接下来使用reset_index方法将上一步得到的数据封装到一个新的DataFrame中排序即可。

df3=df2.groupby(["City"]).size().reset_index()#更改列索引名称df3.columns=["City","Nums"]printdf3.sort_values(by=["Nums"],ascending=False).head()输出:

CityNums121shanghai5427beijing23446hangzhou117126shenzhen11336guangzhou106可以看到在中国,上海的星巴克最多,有542家,其次的是北京、杭州、深圳和广州,去掉.head()可以查看所有城市的数据。

本文主要按照星巴克数量对国家和中国的城市进行排序,用到的知识有:

我们也可以看到一些pandas的操作可以与SQL操作练习起来:

在上文中我们使用布尔索引选择了中国的数据df=starbucks[starbucks["Country"]=="CN"],这一点很像SQL里面的where语句select*fromstarbuckswhereCountry="CN"。

starbucks有很多列,如Country,City,Brand,Postcode等,如果我们要从所有列中选择两列Country和City,则pandas可以使用df=starbucks[["Country","City"]],与之对应的是SQL中的select语句selectCountry,Cityfromstarbucks;

上文中通过国家分组,pandas使用DataFrame.groupby()方法starbucks.groupby(["Country"]),对应的为SQL中的select*fromstarbucksgroupbyCountry。

THE END
1.星巴克第四财季净营收初步数据91亿美元低于分析师预期财年第三财...观点网讯:10月23日消息,星巴克初步估算第四财季调整后EPS为0.80美元,分析师预期1.03美元。第四财季净营收91亿美元,分析师预期93.6亿美元。 另据披露,星巴克第四财季同店销售下滑7%,分析师预期下滑3.48%。第四财季美国的同店销售同比下降10%。第四财季中国同店销售下滑14%,分析师预期下降10.5%。 https://www.163.com/dy/article/JF5USI7T0519QIKK.html
2.Python统计全球星巴克门店的数据及在不同国家和地区门店数量...print("星巴克旗下品牌有:\n",starbucks.Brand.value_counts())# 把重心放在星巴克的咖啡门店上面,所以只查看Brand是Starbucks的数据集内容。coffee = starbucks[starbucks.Brand=='Starbucks']# 全世界一共有多少家星巴克门店?print("---")print(coffee.shape) 然后查看全世界一共有多少个国家和...https://developer.aliyun.com/article/1400195
3.星巴克财务数据与经营状况分析(2021年).docx星巴克财务数据与经营状况分析(2021年).docx,PAGE PAGE 1 财务与经营复盘:扩张驱动量价轮动,同店表现优异 经营数据复盘 门店数量高速扩张,授权门店占比提升迅速。截至 2020 年末,星巴克在全球共有 3.26 万家门店,其中授权门店占比逐年提升,近 5 年稳定在 50%左右。https://max.book118.com/html/2021/0602/8110004077003105.shtm
4.新快报数据下滑 风波不断 星巴克用涨价应对压力? ■廖木兴/图 自2月16日起,星巴克中国多款产品涨价,包括美式咖啡、拿铁咖啡在内的产品售价与之前相比提价1到2元,其中美式咖啡每个杯型涨价2元。“该来的总归会来”,这是业内对星巴克上调价格的基本看法。 不过与星巴克此次提价形成强烈对比的是业绩下滑,在其2月1日发布...https://ep.ycwb.com/epaper/xkb/h5/html5/2022-02/22/content_1515_472574.htm
5.Starbucks星巴克官方旗舰店店铺数据汇总店查查Starbucks星巴克官方旗舰店的店铺数据分析,宝贝优惠促销打折活动等分析,整体店铺销售和宝贝销售情况分析报告https://www.dianchacha.com/shop/summary/index/uid/2634283647
6.星巴克(SBUX)个股概要股票价格最新资讯行情走势鉴于新CEO的过渡及目前的业务状况,星巴克暂停发布2025财年全年业绩指引。所以当星巴克今日正式披露业绩时,相比并不亮眼的数据,外界或许对于新CEO的首次财报会更为期待。会上,星巴克董事长兼首席执行官布莱恩·尼科尔表示,星巴克要从根本上改变战略,包括精简菜单、减少折扣、更慢但更有序的创新、缩减下一财年的新店数量以...https://www.laohu8.com/stock/SBUX/
7.2023咖啡店星巴克人群洞察.pptx兴趣的星巴克的粉丝,也会尝试瑞幸、奈雪等新晋网红茶饮;乐于烹饪,喜欢用豆果等多种APP查看菜谱美食习惯TA们日常健身除了跳绳、跑步、同样爱跳广场舞,呈现出城市级别下沉的特征日常生活星巴克人群画像数据来源:TalkingdataSMC营销云2023年1月星巴克app活跃人群洞察总样本量:10,936,225移动设备ID(IMEI/MAC/OAID)星巴克人群...https://www.renrendoc.com/paper/360310998.html
8.数据分析实战——星巴克门店数量可视化分析袋鼠社区数据分析实战——星巴克门店数量可视化分析 - 星巴克门店分布可视化分析项目介绍:使用python对星巴克门店分布进行可视化分析数据背景:数据源来自与Kaggle: Starbucks Locations Worldwide | Kaggle,囊括了截至2017/2月份全球星巴克门店的基础信息,包括品牌...https://www.dtstack.com/bbs/article/5032
1.星巴克门店数据可视化分析报告星巴克数据分析图表使用value_counts函数对数据的Brand列进行统计; #查看星巴克旗下有哪些品牌。 print("星巴克旗下品牌和门店数量分别为\n",df.Brand.value_counts()) 1. 2. (2)查看全世界一共有多少个国家和地区开设了星巴克门店,显示门店数量排名前10和后10的国家和地区。 https://blog.51cto.com/u_12218/11813851
2.数据可视化,星巴克和瑞幸全国门店对比瑞幸门店分布图最新截至数据集时间(2022年),星巴克全国门店数量预计4442,瑞幸咖啡全国门店数量预计3904,星巴克门店数比瑞幸多14%。 从量级上来看两者已经很接近,而且瑞幸正以可怕的增长速度扩张门店,以我家附近的商圈为例,去年还只有一家瑞幸,今年已经有三家。 星巴克无论从选址位置、开店成本、门店面积、店员数量上来说都比瑞幸要苛刻...https://blog.csdn.net/Pydatas/article/details/138770498
3.星巴克T(04337)股票股价股价行情财报数据报告简介:星巴克公司是精品咖啡的烘焙商、营销商和零售商,在大约 83 个市场开展业务。该公司拥有超过 35,000 家公司经营和授权的商店。该公司通过三个部门运营:北美部门,包括美国和加拿大;国际部门,包括中国、日本、亚太地区、欧洲、中东、非洲、拉丁美洲和加勒比地区;以及渠道开发部门。渠道开发部门包括烘焙全豆和研磨咖啡...https://xueqiu.com/S/04337/news
4.瑞幸与星巴克最新财报7项数据对比:不同阶段的同一难题美东时间30日盘前,瑞幸咖啡(LKNCY.O,下称“瑞幸”)公布了2024年第三季度业绩;30日盘后,星巴克(SBUX.US)也公布了截至9月底的24财年第四季度更为详细的财务数字并召开了业绩会。瑞幸咖啡在30日股价上涨10.42%,公司市值达74.42亿美元。 在业绩公告中,瑞幸表示,除新加坡市场外,瑞幸也在积极评估在美国和其他市场的...https://i.ifeng.com/c/8e8IwyPtUl4
5.星巴克可以让你扔掉数据线?爱范儿一切充满不稳定因素。看来,星巴克也没办法叫人扔掉手中的数据线,投奔无线充电。苹果呢?三月份消息传出: “苹果的一项专利表明,他们正在积极寻求 iPad 的无线充电解决方案。就专利内容看来,苹果的思路较常规做法有所不同,他们准备将无线充电技术集成到 Smart Cover 上。” ...https://www.ifanr.com/289488/
6.根据星巴克店铺定位所做的一点数据分析在你的身边,星巴克的身影大概越来越多吧。据资料表明,从2011年到2015年,星巴克在华新开了超过1300家店,门店总数达到1811家。呈现出逐渐加速的态势,此后五年内,星巴克计划每年在中国投资增设500家门店,预计2019年星巴克在华门店总数量达到3400家。 近日,正好从kaggle网站下载了星巴克的全球布点数据,让我们以国内为据点,...https://www.jianshu.com/p/01ff1ecb20fb
7.星巴克股票SBUX.US港股/美股价格行情统计数据 今开-最高-最低-昨收- 成交量-成交额-换手率-振幅- 52 周高-52 周低-委比-量比- 讨论 暂无数据 星巴克(SBUX.US) 最近更新时间 19:00:00 美东 评级 投资风格 财务评分https://mini-app.lbkrs.com/zh-CN/quote/SBUX.US
8.为什么最近半年销售数据上,星巴克的市场表现不如COSTA2、为什么最近半年销售数据上,星巴克的市场表现不如COSTA? 3、经济危机下人们会不会减少甚至不喝COSTA? 4、顾客在店里都呆了两个小时啦,COSTA店员要不要上去问他还要点什么? 5、COSTA顾客在店里平均逗留的时间是多长? 6、经济危机下,咖啡行业里连锁经营比小店更能撑下去? 主题: John Derkach: Singular vision ...https://www.douban.com/group/topic/4705073
9.营收数据创历史新高!星巴克罕见暴涨10%中国活跃会员超2100万营收数据创历史新高!星巴克罕见暴涨10% 中国活跃会员超2100万 财联社11月3日讯(编辑 史正丞)就在近几周欧美上市公司财报季先后传出“奢侈品卖不动了”、“汽车需求低迷”等消费市场的利空后,全球最大连锁咖啡店星巴克却给资本市场带来了巨大的惊喜。截至发稿,星巴克美股周四的涨幅稳定在10%左右,这也是公司近三年来...https://m.cls.cn/detail/1506229
10.今日数据精选:星巴克将关美国400家门店,口罩机价格从上百万跌至十...6月12日数据精选 星巴克预亏超预期 将关闭美国约400家直营门店 星巴克预计第三财季(4月至6月)营收下降约30-32亿美元,营业利润下降约20-22亿美元,每股亏损0.55美元至0.7美元,亏损额远高于雅虎分析师的平均估值。星巴克在公告中指出,全球两个主要市场美国和中国的复工率均超过90%。 https://www.jfdaily.com/wx/detail.do?id=258399
11.星巴克:总净营收60.74亿美元电商数据03月08日消息,亿邦动力网第一时间了解到,咖啡连锁巨头星巴克(Starbucks Corporation)公布2018财年第一季度(截止2017年12月31日)业绩:总净营收60.74亿美元,比上年同期的57.33亿美元增加了5.9%;净利润22.50亿美元,比上年同期的7.52亿美元增加了199.3%。 除了以上数据,你还需掌握的相关信息有: ...https://www.ebrun.com/20180308/267021.shtml
12.武汉星巴克专送工资待遇(招聘趋势,就业前景)¥15.4K 月平均工资 武汉星巴克专送一个月多少钱?数据统计依赖于各平台发布的公开薪酬,仅供参考。 对比本地区 42.9% 数据可信度 一般 说明:武汉星巴克专送工资待遇怎么样?平均工资 ¥15.4K,对比武汉平均工资 ¥10.8K,高 42.9% 。数据可信度一般。数据统计依赖于各平台发布的公开薪酬,仅供参考。 导航...https://m.jobui.com/salary/wuhan-xingbakezhuansong/
13.医疗没有数据能表明咖啡致癌,误导公众的“坏科学”请大家摒弃 这个周末,要不要喝咖啡,惊到了不少人。一条“星巴克咖啡致癌”的消息在朋友圈刷屏。 事情缘起刚过去的这个周三,加州法院下达了一个判决:加州的咖啡销售者需要在咖啡的标签上贴出警告,让消费者知道咖啡里含有一种“可能致癌的物质”。https://www.whb.cn/zhuzhan/yiliao/20180401/193934.html
14.中国咖啡市场行业数据分析:27.24%“星巴克中国”APP用户月收入在5K...iiMedia Research(艾媒咨询)数据显示,在2022年“星巴克中国”APP用户月收入分布中,27.24%用户月收入在5K-10K之间,23.61%用户月收入在3K以下,18.78%用户月收入在10K-20K之间,17.99%用户月收入在3K-5K之间,12.38%用户月收入在20K以上。 本文数据节选自艾媒咨询发布的《中国咖啡市场发展状况与消费行为调查数据》数据集,...https://www.iimedia.cn/c1061/90485.html