俗话说,一图胜千语,对人类而言一串数据很难立即洞察出什么,但如果展示图就能一眼看出来门道。数据整理后,如何画图,画出好的图在数据分析中成为关键的一环。
数据表,时间序列数据在数据分析建模中很常见,例如天气预报,空气状态监测,股票交易等金融场景。数据分析过程中重新调整,重塑数据表是很重要的技巧,此处选择Titanic数据,以及巴黎、伦敦欧洲城市空气质量监测 N O 2 NO_2 NO2?数据作为样例。
数据分析
经典算法
LLM应用
本文用到的样例数据:
样例代码:
导入关键模块
import pandas as pd
import matplotlib.pyplot as plt
仍然使用air_quality数据来举例,读取NO2数据:
In [1]: air_quality = pd.read_csv("data/air_quality_no2.csv", index_col=0, parse_dates=True)
In [2]: air_quality.head()
Out[2]:
station_antwerp station_paris station_london
datetime
2019-05-07 02:00:00 NaN NaN 23.0
2019-05-07 03:00:00 50.5 25.0 19.0
2019-05-07 04:00:00 45.0 27.7 19.0
2019-05-07 05:00:00 NaN 50.4 16.0
2019-05-07 06:00:00 NaN 61.9 NaN
拿到PM25数据,急不可耐就想画张图:
In [3]: air_quality.plot()
Out[3]: <Axes: xlabel='datetime'>
In [4]: plt.show()
很简单吧,两行解决战斗,就是调用plot函数,然后显示函数show。
当然,这样就是一张图里把所有的数值类的列都给画出来了。有点太花,看不清楚。
Boss看了,要求清晰一点,清爽一点。只要巴黎的监测数据,还不是手到擒来。
In [5]: air_quality["station_paris"].plot()
Out[5]: <Axes: xlabel='datetime'>
In [6]: plt.show()
只要从pandas中选择数据子集就行,然后照样调用显示函数。
有时候要卷一卷,就是要一较高下。如何比较两个地方的 $ NO_2 $ 的关系图呢?
In [7]: air_quality.plot.scatter(x="station_london", y="station_paris", alpha=0.5)
Out[7]: <Axes: xlabel='station_london', ylabel='station_paris'>
In [8]: plt.show()
尝试下散点图,把London和Paris分别作为x,y轴。
画图plot函数默认是画曲线的,即line函数,而散点图,就需要调用对应的scatter函数。
以上代码只是一个简单示例,示例代码中的表达式可以根据实际问题进行修改。
觉得有用 收藏 收藏 收藏
点个赞 点个赞 点个赞
End
GPT专栏文章:
GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案
GPT实战系列-LangChain + ChatGLM3构建天气查询助手
GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)
GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案