快速浏览

  • 文件下载链接(csv)
  • 题目
  • 本人代码
  • 方法解释
  • 运行结果

文件下载链接(csv)

文件下载

题目

 Date表示价格调查的日期,AveragePrice表示当天的平均价格,region表示调查的城市。

 彬彬想要获取2015-2018中纽约(“NewYork”)与芝加哥(“Chicago”)每月牛油果平均价格,并计算全美国的每月牛油果平均价格,画出3条折线图进行比较。
具体步骤如下:

  1. 导入模块、读取文件、并将字体设置为"Arial Unicode MS"
  2. 根据城市(“region”),将原数据分组、采样聚合,获取纽约和芝加哥两个城市每个月的牛油果平均价格
  3. 在这之后,以月份为x轴,绘制展示纽约牛油果每月均价的折线图,并将折线颜色设置为skyblue,标记点的样式设置为"o",图例设置为"纽约价格水平"
  4. 同时,以月份为x轴,绘制展示芝加哥牛油果每月均价的折线图,并将折线颜色设置为blue,标记点的样式为"o",图例设置为"芝加哥价格水平"
  5. 利用所学知识,计算全美国每个月的牛油果均价,并制作对应的折线图,将折线颜色设置为green,标记点的样式为"o",图例设置为"全美价格水平"
  6. 最后,将x轴标题为"时间",y轴标题设置为"价格水平",图例显示在左上角

本人代码

import pandas as pd
import matplotlib.pyplot as pltdata = pd.read_csv("/Users/binbin/avocado.csv" )#设置字体
plt.rcParams["font.sans-serif"] = "Arial Unicode MS"#将Date转换为时间数据
data["Date"] = pd.to_datetime(data["Date"])
data = data.set_index("Date")
#根据region和时间分组
groupByRegion = data.groupby(data["region"]).resample("M").mean()#获取纽约和芝加哥两个城市每个月的牛油果平均价格
averagePriceNY = groupByRegion.loc["NewYork"]["AveragePrice"]
averagePriceCH = groupByRegion.loc["Chicago"]["AveragePrice"]#计算全美国每月的牛油果均价
averagePriceUSA = data.resample("M").mean()#以月份为x轴,绘制展示纽约牛油果每月均价的折线图,并将折线颜色设置为skyblue,marker设置为"o",图例设置为"纽约价格水平"#NewYork
plt.plot(averagePriceNY.index, averagePriceNY, color="skyblue", marker="o", label="纽约价格水平")
plt.legend(loc="upper left")
plt.xlabel("时间")
plt.ylabel("价格水平")#Chicago
plt.plot(averagePriceCH.index, averagePriceCH, color="blue", marker="o", label="芝加哥价格水平")
plt.legend(loc="upper left")
plt.xlabel("时间")
plt.ylabel("价格水平")#America
plt.plot(averagePriceUSA.index, averagePriceUSA, color="green", marker="o", label="全美价格水平")
plt.legend(loc = "upper left")
plt.xlabel("时间")
plt.ylabel("价格水平")
plt.show()

方法解释

  • plt.rcParams["font.sans-serif"] = "Arial Unicode MS": 将字体设置为Arial Unicode MS
  • pd. to_datetime: 将str类型数据转换为datetime类型数据
  • data.set_index(): 将data中的某一列作为data新的行索引(index)
  • groupByRegion = data.groupby(data["region"]).resample("M").mean():将data按照"region"分组,并以每月为单位重采样来计算每月的平均价格
  • averagePriceNY = groupByRegion.loc["NewYork"]["AveragePrice"]
    averagePriceCH = groupByRegion.loc["Chicago"]["AveragePrice"]:将groupByRegion中行索引对应"NewYok"和"Chicago"的行分别截取出来,并根据列索引(columns)为"AveragePrice"来截取数据赋值

运行结果

Python数据分析分组聚合重采样典型例题及其解法相关推荐

  1. python数据分析————数据聚合与分组运算

    分组:使⽤特定的条件将原数据划分为多个组 聚合:对每个分组中的数据执⾏某些操作,最后将计算的结果进⾏整合 groupby⽅法参数 说明 by ⽤于确定进⾏分组的依据 axis 表⽰分组轴的⽅向 sor ...

  2. python数据分析-分组把DataFrame列转行

    问题:遇到了一个问题是需要根据DataFrame中的某一列把对应另一列的数据由列转为行. 一.数据展示 a = pd.DataFrame({'name1':['a','a','b','c','b',' ...

  3. python pandas聚合_Python Pandas分组聚合的实现方法

    Pycharm 鼠标移动到函数上,CTRL+Q可以快速查看文档,CTR+P可以看基本的参数. apply(),applymap()和map() apply()和applymap()是DataFrame ...

  4. 跟小白学Python数据分析——绘制仪表盘

    本文继续采用PyEcharts v1.x版本进行绘制仪表盘. 注:PyEcharts分为 v0.5.x 和 v1.x 两个大版本,v0.5.x 和 v1.x 间不兼容,v0.5.x是基于Python2 ...

  5. 跟小白学Python数据分析——绘制水球图

    本文继续采用PyEcharts v1.x版本进行绘制水球图. 注:PyEcharts分为 v0.5.x 和 v1.x 两个大版本,v0.5.x 和 v1.x 间不兼容,v0.5.x是基于Python2 ...

  6. python数据分析及可视化(九)pandas数据规整(分组聚合、数据透视表、时间序列、数据分析流程)

    作业 拼接多个csv文件 去除重复数据,重新索引 自动挡和手动挡数目 计算每个城市二手车数量 统计每个汽车品牌平均售价价格(不是原价) 分组与聚合 如下表所示,5行3列的表格,5种水果分别对应的名称, ...

  7. 【Python数据分析与处理 实训03】 --- 酒类消费信息分析(数据分组聚合 group().agg()应用)

    [Python数据分析与处理 实训03] - 酒类消费信息分析(数据分组聚合 group().agg()应用) 探索酒类消费信息 对于下面的数据集进行简单的一些数据的分析训练 若需要源数据请私信~ 1 ...

  8. python 数据分析(六)astype('category')按类别分组 + 分组聚合操作 + 透视表 + 交叉表 + excel表的数据处理

    文章目录 一.按照类别单独分类astype() 1. astype()用法 二.时间操作 1. 第一种:直接利用to_datetime() 2. 第二种:Series.dt 三.分组聚合操作 1. 分 ...

  9. Python数据分析pandas之分组统计透视表

    Python数据分析pandas之分组统计透视表 数据聚合统计 Padans里的聚合统计即是应用分组的方法对数据框进行聚合统计,常见的有min(最小).max(最大).avg(平均值).sum(求和) ...

最新文章

  1. LINUX下的21个特殊符号 转
  2. ofdma技术_科普:何为第六代WiFi技术?你家也可以轻松实现1.6G每秒的网速
  3. MySQL中只会count(),sum()?累加运算没听过?
  4. Java入门学习笔记[狂神说Java]
  5. dict格式转字符串两种方法的区别
  6. Nginx的Gzip模块配置指令(三)
  7. linux 将程序链接到 usr bin,Linux / usr / bin文件在重新启动后消失
  8. 移植ubuntu14.04根文件系统至beaglebone开发板探索
  9. Xml解析之PULL解析 例2
  10. Volatility3 windows插件详解
  11. 超市库存java管理系统_Java案例:超市库存管理系统
  12. 微信小程序-找地儿住-官方文档
  13. 为什么要研究《双目结构光》?
  14. 阅读 SICP 感想(0. 关于前言和序言)
  15. windows10 安装两台mysql进行主从复制
  16. ios 唤醒小键盘 如何使得小键盘上出现 “前往”、“搜索”、“”等按钮
  17. 统计机器学习相关性分析
  18. web clip(mobileconfig)配置签名去掉未验证
  19. 点击按钮实现页面切换中英文
  20. SpringBoot——JPA的使用、构建restful风格的JPA

热门文章

  1. ubuntu 20.04 配置ITS环境遇到的坑
  2. KMP算法详解 转帖
  3. linux传统方式挂载新硬盘并进行分区格式化
  4. 浅谈fieldset标签的使用
  5. 流媒体基础知识TS流 PS流 ES流区别
  6. 随笔--C语言--putchar()和putc()函数
  7. C++任意数字类型转 2进制、8进制、16进制
  8. 知乎大V推荐!2021新一波程序员跳槽季,使用指南
  9. 小恐龙跳跳跳-周雨涵小游戏 -C
  10. java dag_[转] DAG算法在hadoop中的应用