Python 数据分析示例
by 星辉
Posted on 2019年10月23日周三 at 10:50下午 in 教程
数据分析处理是Python语言的一个重要应用领域,对于此类需求通常使用的软件包是Pandas,数据科学发行版Anaconda已经直接附带了Pandas,对于Python官方版则可以使用以下pip命令安装Pandas:
pip install pandas
下面的示例是使用Jupyter笔记本对中国历史上皇帝们的寿命数据进行简单的统计分析,练习所用的数据文件为emperor.csv(这是一种以逗号作为分隔符的通用纯文本数据格式): http://study.ywicc.edu.cn/x/07ltKL
# 导入pandas模块,按惯例以pd作为别名 import pandas as pd # 读取CSV格式的数据返回一个数据网格DataFrame df = pd.read_csv("http://study.ywicc.edu.cn/x/07ltKL") df.shape # 数据网格的形状即行数与列数
以上语句块读取CSV文件返回一个数据网格(DataFrame)对象,即302行乘5列的二维表。
使用DataFrame对象的head方法则可以预览前几行的内容(默认5行):
df.head()
对于已生成的 DataFrame,还可以进行种调整和查询操作,以下语句块对列标签进行了修改,然后列出寿命达到80岁的皇帝:
df.columns = ["序号", "名号", "寿命", "生卒", "朝代"] df[df.寿命 >= 80]
以下语句块筛选出明清两朝的皇帝,调用tail方法预览最后10行:
mingqing = df[df.朝代.isin(["明", "清"])] mingqing.tail(10)
以下语句块比较明清两朝的皇帝寿命——聚合输出分组总计数、最低值、最高值、平均值、中位数:
compare = mingqing.groupby("朝代").寿命.agg(["count", "min", "max", "mean", "median"]) compare
可以看到使用Pandas进行数据分析是相当方便快捷的,这个示例只对Pandas的功能进行了非常简要的介绍,学习者可以查阅官方文档了解更多使用技巧 https://pandas.pydata.org/pandas-docs/stable/