pandas导入数据并可视化基于每年乘客数

简介: pandas导入数据并可视化基于每年乘客数

本次选用每年的一个乘客数据进行数据处理与可视化,更加了解pandas与numpy的使用学会对数据的转化处理,最后完成可视化。

 

数据导入

使用pandas的read_excel()方法读入数据格式为.xlsx的表格(如果格式为.csv就使用read_csv()并传入参数)

读取表格样式

 

1. import pandas as pd# 数据处理需要的库
2. import matplotlib.pyplot as plt# 绘图需要的库
3. plt.rcParams['font.sans-serif']=['SimHei']  # 用来正常显示中文标签
4. plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
5. data=pd.read_excel(r'实验1data.xlsx')# 读入数据的路径  实验1data.xlsx这是我的当前路径 
6. # 你可以改成你的相对(相对当前文件 文件夹名称/data.xlsx)或者绝对路径(D:/use/../data.xlsx)
7. data# 查看数据

1. data=data.set_index('year')#设置year为index
2. data
3. # data['行求和']=data.sum(axis=1)
4. # data

 

1. # 对年份求和
2. data['每年求和']=data.sum(axis=1)
3. data

 

1. data.loc['每月求和']=data.apply(lambda x:x.sum())#对每月进行求和
2. data2=data.loc['每月求和']# 取出求和后的字段
3. data2=pd.DataFrame(data2)# 转化为DataFrame形式
4. data2=data2[:-1]# 取最后一列所以索引为-1
5. data2

 

pandas数据统计

完成以上对每年以及每月的数据统计后,进行下一步可视化的工作

可视化

箱线图

1. data2.plot.box(title="Box Chart")
2. plt.grid(linestyle="--", alpha=0.3)
3. plt.show()

每年数据的统计

1. data1=data['每年求和']
2. data1
3. da=pd.DataFrame(data1)
4. da

箱线图

1. da.plot.box(title="Box Chart")
2. plt.grid(linestyle="--", alpha=0.3)
3. plt.show()

1. import numpy as np
2. x=np.array(da.index)
3. y=np.array(da['每年求和'])
4. print(x)
5. print(y)

 

1. import numpy as np
2. x=np.array(da.index)
3. y=np.array(da['每年求和'])
4. data4={
5. 'year':x,
6. 'total':y
7. }
8. data4=pd.DataFrame(data4)
9. data4=data4[:-1]
10. data4

将年和月数据转化成一个新的DataFrame

 

1. import matplotlib.pyplot as plt
2. import pandas as pd
3. GDP_data = data4
4. #设置绘图风格
5. plt.style.use('ggplot')
6. #处理中文乱码
7. plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
8. #绘制条形图
9. plt.figure(figsize=(10,10))
10. plt.rcParams['axes.facecolor']='snow'
11. plt.bar(x = range(GDP_data.shape[0]),  #指定条形图x轴的刻度值(有的是用left,有的要用x)
12.         height = GDP_data.total,  #指定条形图y轴的数值(python3.7不能用y,而应该用height)
13.         tick_label = GDP_data.year,  #指定条形图x轴的刻度标签
14.         color = 'skyblue',  #指定条形图的填充色
15.         )
16. # 添加x轴的标签
17. plt.xlabel('年份(年)')
18. #添加y轴的标签
19. plt.ylabel('乘客总数量(人次)')
20. #添加条形图的标题
21. plt.title('1949-1960年乘客数据条形图')
22. #为每个条形图添加数值标签
23. for x,y in enumerate(GDP_data.total):
24.     plt.text(x,y+0.1,"%s"%round(y,1),ha='center')  #round(y,1)是将y值四舍五入到一个小数位
25. #显示图形
26. plt.show()

1. import numpy as np
2. data2['月求和']=data2['列求和']
3. x=np.array(data2.index)
4. y=np.array(data2['月求和'])
5. data5={
6. 'Month':x,
7. 'total':y
8. }
9. data5=pd.DataFrame(data5)
10. data5

每月数据可视化

1. import matplotlib.pyplot as plt
2. import pandas as pd
3. GDP_data = data5
4. #设置绘图风格
5. plt.style.use('ggplot')
6. #处理中文乱码
7. plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
8. #绘制条形图
9. plt.figure(figsize=(10,10))
10. plt.rcParams['axes.facecolor']='snow'
11. plt.bar(x = range(GDP_data.shape[0]),  #指定条形图x轴的刻度值(有的是用left,有的要用x)
12.         height = GDP_data.total,  #指定条形图y轴的数值(python3.7不能用y,而应该用height)
13.         tick_label = GDP_data.year,  #指定条形图x轴的刻度标签
14.         color = 'pink',  #指定条形图的填充色
15.         )
16. #添加y轴的标签
17. plt.ylabel('乘客总数量(人次)')
18. # 添加x轴的标签
19. plt.xlabel('月份(月)')
20. #添加条形图的标题
21. plt.title('1949-1960年每月乘客数据条形图')
22. #为每个条形图添加数值标签
23. for x,y in enumerate(GDP_data.total):
24.     plt.text(x,y+0.1,"%s"%round(y,1),ha='center')  #round(y,1)是将y值四舍五入到一个小数位
25. #显示图形
26. plt.show()

 

总结

使用pandas导入数据,对数据进行合理的处理取出我们所要分析的字段进行可视化工作,pandas与numpy是数据处理必不可少的两个重要的库函数,进行深入的学习能提升自我的技术水平,也欢迎大家指出我的不足,谦受益!


相关文章
|
数据可视化 数据挖掘 数据处理
Pandas+Pyecharts | 40000+汽车之家数据分析可视化
Pandas+Pyecharts | 40000+汽车之家数据分析可视化
|
数据可视化 数据挖掘 大数据
Pandas+Pyecharts | 北京某平台二手房数据分析可视化
Pandas+Pyecharts | 北京某平台二手房数据分析可视化
|
10月前
|
数据可视化 数据挖掘 数据处理
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
390 0
|
1月前
|
机器学习/深度学习 数据可视化 搜索推荐
Python在社交媒体分析中扮演关键角色,借助Pandas、NumPy、Matplotlib等工具处理、可视化数据及进行机器学习。
【7月更文挑战第5天】Python在社交媒体分析中扮演关键角色,借助Pandas、NumPy、Matplotlib等工具处理、可视化数据及进行机器学习。流程包括数据获取、预处理、探索、模型选择、评估与优化,以及结果可视化。示例展示了用户行为、话题趋势和用户画像分析。Python的丰富生态使得社交媒体洞察变得高效。通过学习和实践,可以提升社交媒体分析能力。
50 1
|
1月前
|
机器学习/深度学习 数据可视化 搜索推荐
Pandas 和 Matplotlib 可视化
【7月更文挑战第14天】Pandas 和 Matplotlib 是Python数据分析的核心库,用于数据探索性可视化。首先,通过`pip install pandas matplotlib`安装库。接着,使用`pd.read_csv()`加载CSV数据,`df.describe()`查看统计信息。利用Matplotlib的`hist()`, `scatter()`, 和 `boxplot()`绘制直方图、散点图和箱线图,展示数据分布和关系。通过`subplots()`创建多图展示,自定义样式如颜色、标记,并添加注释和标题。高级技巧包括热力图、时间序列图、分组可视化及Seaborn和Plotly
40 10
|
5天前
|
存储 数据可视化 数据挖掘
Python 3 中使用 pandas 和 Jupyter Notebook 进行数据分析和可视化
Python 3 中使用 pandas 和 Jupyter Notebook 进行数据分析和可视化
12 0
|
3月前
|
数据可视化 数据挖掘 索引
利用Python中的Pandas库进行数据分析与可视化
本文介绍了如何利用Python中的Pandas库进行数据分析与可视化。通过Pandas提供的强大功能,我们可以轻松地加载、清洗、处理和分析各种类型的数据。
|
3月前
|
数据采集 数据可视化 数据挖掘
如何利用Python中的Pandas库进行数据分析和可视化
Python的Pandas库是一种功能强大的工具,可以用于数据分析和处理。本文将介绍如何使用Pandas库进行数据分析和可视化,包括数据导入、清洗、转换以及基本的统计分析和图表绘制。通过学习本文,读者将能够掌握利用Python中的Pandas库进行高效数据处理和可视化的技能。
|
3月前
|
存储 数据可视化 数据挖掘
数据分析与可视化:Pandas与Matplotlib/Seaborn的完美结合
【4月更文挑战第16天】本文探讨了Python中的Pandas、Matplotlib和Seaborn如何协同进行数据分析与可视化。Pandas提供高效的数据结构DataFrame,便于数据处理和清洗;Matplotlib是基础绘图库,支持自定义图表;Seaborn则在Matplotlib基础上提供美观的统计图形。通过这三个库的无缝结合,数据分析师可以从数据处理直达可视化,提高效率并呈现更具吸引力的分析结果。掌握这些工具将助力深入理解数据并揭示其中的故事。
|
3月前
|
SQL 数据可视化 数据挖掘
利用Python中的Pandas库进行数据分析和可视化
Python语言中的Pandas库是一个功能强大的工具,可用于数据处理、清洗、分析和可视化。本文将介绍如何利用Pandas库对数据进行处理和分析,并结合Matplotlib库进行数据可视化,帮助读者快速掌握数据分析和可视化的基本方法。
54 3