倒数第二节课了,本节课主要讲获取数据之后,数据处理与数据分析,利用Pandas进行数据处理分析。
什么是Pandas?
一个强大的分析结构化数据的工具集(结构化数据:csv,json。非结构化数据:声音、视频、图片)
基础是NumPy,提供了高性能矩阵的运算
应用于数据挖掘,数据分析
如:学生成绩分析、股票数据分析等
提供数据清洗功能(获取的数据不一定是纯净的,有空值,把这些空值处理就是清洗数据)
数据结构:
Series:类似一维数组的对象
通过list构建Series
ser_obj = pd.Series(range(10))
由索引和数据组成:索引在左,数据在右。索引是自动创建的。
获取索引和数据ser_obj.index, er_obj.values
预览数据ser_obj.head(n) 前几行数据; ser_obj.tail(n) 后几行数据
通过索引获取数据:ser_obj[idx]
索引与数据的对应关系仍保持在数组运算的结果中
通过dict构建Series
name属性
ser_obj.name,ser_obj.index.name
举例说明:
DataFrame
类似多维数组/表格数据(如:Excel、R中的data.frame)
每列数据可以是不同类型,what about ndarray ?
索引包括列索引和行索引
通过ndarray构建DataFrame
通过dict构建DataFrame
通过列索引获取列数据(Series类型,获取一列数据)
df_obj[col_idx]或df_obj.col_idx
不连续索引获取数据
df_obj['label1','label2']
增加列数据,类似dict添加key-value
df_obj[new_col_idx] = data
删除列
del df_obj[col_idx]
排序:
索引排序:sort_index
按值排序:sort_values(by= 'label1')
常用的统计计算
sum、mean、max、min ......
axis=0按列统计axis= 1按行统计
skipna排除缺失值,默认为True
idmax、idmin、comsum
统计描述
describe 产生多个统计数据
举例说明:
1、读取csv文件;2、查看前五行数据;3、查看某2列的数据;4、查看数据的基本信息;5、数据预览;6、基本统计;
7、排序;8、获取某一列的前几行数据;9、将获取的数据写入csv文件。
"""作者:lanxingbudui日期:-03-07功能:AQI计算版本:9.0"""import pandas as pddef main():"""主函数"""aqi_data = pd.read_csv('china_city_aqi.csv')# 查看前五行数据print(aqi_data.head(5))# 只查看前三行AQI、CO/1h数据print(aqi_data.head(3)[['City', 'AQI', 'CO/1h']])print('基本信息:')print(aqi_data.info())print('数据预览:')print(aqi_data.head())# 基本统计print('AQI最大值:', aqi_data['AQI'].max())print('AQI最小值:', aqi_data['AQI'].min())print('AQI均值:', aqi_data['AQI'].mean())# top10top10_citis = aqi_data.sort_values(by=['AQI']).head(10)print('空气质量最好的10个城市:')print(top10_citis)# bottom10# bottom10_citis = aqi_data.sort_values(by=['AQI']).tail(10)bottom10_citis = aqi_data.sort_values(by=['AQI'], ascending=False).head(10)print('空气质量最差的10个城市:')print(bottom10_citis)# 保存csv文件top10_citis.to_csv('top10_aqi.csv', index=False)bottom10_citis.to_csv('bottom10_aqi.csv', index=False)if __name__ == '__main__':main()
如果觉得《Python的学习笔记案例8--空气质量指数计算9.0》对你有帮助,请点赞、收藏,并留下你的观点哦!