文科生学Python系列10: Pandas鸢尾花案例【彩民之家

2019-10-11 05:42 来源:未知
i# Load Datasetimport seaborn as snsimport matplotlib.pyplot as plt# Load Datasetdf = sns.load_dataset# Plotplt.figure(figsize=, dpi= 80)sns.pairplot(df, kind="scatter", hue="species", plot_kws=dict(s=80, edgecolor="white", linewidth=2.5))plt.show()

本课索引

代码 说明

---导入pandas---

import pandas as pd 导入pandas包并将之简写为pd

---创建pandas中的DataFrame和Series---

pd.DataFrame() 创建 pandas DataFrame

pd.Series() 创建 pandas Series

---数据选择---

df.column_name 选取数据框的某一列,生成Series格式数据,df为数据框,column_name为列名

df['column_name'] 选取数据框的某一列,生成Series格式数据

df[['column_name']] 选取数据框的列,生成DataFrame格式数据

df.loc[ ] 使用行和列的标签索引选取数据

df.iloc[ ] 使用行和列的数值索引选取数据

---导入csv格式数据---

pd.read_csv() 在pandas中读取csv文本格式数据

---观察数据框---

df.head() 查看数据框df的前几行数据

df.tail() 查看数据框df的最后几行数据

df.info() 获取数据框df的信息

df.describe() 获取数据框df的各项统计值

df.index 查看数据框df的行索引

df.columns 查看数据框df的列名

df.shape 查看数据框df的形状,行数和列数

---Series数据的一些统计分析函数---

se.unique() 获取Series数据中的数值种类,一般用于分类数据,这里se为Series格式数据

se.value_counts() 统计Series数据中的数值种类及其对应的数据个数

se.mean() 计算Series数据的均值

se.std() 计算Series数据的标准差

se.median() 计算Series数据的中位数

se.max() 计算Series数据的最大值

se.min() 计算Series数据的最小值

se.count() 计算Series数据的个数

---pandas绘图函数---

df.plot(kind='scatter', x= , y= ) 绘制散点图

df.plot(kind='box') 绘制箱图

df.boxplot(by='column_name') 绘制箱图,并按 column_name 这一列的分类数值进行分组

加载虹膜CSV数据TensorFlow

该虹膜数据集包含150行数据,包括来自每个的三个相关鸢尾种类50个样品: 山鸢尾虹膜锦葵,和变色鸢尾

图像

彩民之家论坛9066777 161.png

这是十分有用统计分类方法。许多物体的尺寸,或者尺寸之比会在一定范围内。比如人体四肢比例接近0.6。对于上图重叠区间低于置信度区间的第四列,花瓣宽度就能作为很重要的分类依据。应该让他拥有较高的权重。所以很多难题解决不了只是我们没有发现那些关键的信息。

误差图 —— 让程度看的见

例程来自:

感谢b站UP "菜菜TsaiTsai" 分享这个博客.

数据可视化初探

数据可视化一般是数据分析的第一步,让我们对数据有一个直观的了解。

通过可视化,我们往往可以观察到一些规律,这些观察到的规律可以对后续的建模起到指导作用。

可视化也是和非技术背景人沟通最有效的手段之一,不是所有人都懂得模型,但是大部分都可以理解图形

这堂课的高潮来啦!

把数据转换成图表!在Python中!有点激动了。来,先来看我们的输出图:

散点图

散点图往往用来反映两个变量的关系。设置图中横坐标和纵坐标:x轴上画出花瓣的长度,y轴上画出花瓣的宽度。用参数 kind=scatter ,表示要来绘制一个散点图。

老师说,在Python中,以%开头的成为 魔术关键字。这。。。真的很魔术。。。所以第69 条语句是为了后面的效果做铺垫的。

这部分内容我在等飞机起飞的途中进行的。因为没有网络了,我把复制下来的预习资料,跟着里面的代码打一遍。由于我复制过来的预习资料是显示不出图表的。然后运行69的时候,没有输出,我就在脑补这到底是个什么鬼图。。。然后70 的输出,让我愉快地让我忘记了 69 条没有图输出的不快。

回来之后,在听回老师讲的解释,第一句 %matplotlib inline 表示,下面的图形设置在notebook中,可以直接展示图形输出。注意DataFrame也是基于matplotlib作图的。

69 条第2句 %config InlineBackend.figure_format='retina' 是设置图片清晰度。终于知道为什么没有运行结果了,因为这两个“魔术关键字” 的铺垫,就是为了后面 70 条图形的形成啊~!

上面是一个简单的散点图,图中只有一种颜色来代表花瓣的长度和宽度。有时候我们看不同类型的数据分布,来看看是怎么操作的:

这上下是同一个运行结果

上面是三个不同品种的花瓣数据,输出结果是分别在3个不同的图表中。

要是我们想要把这三个图放在同一个图里面呢?加 ax=ax:

ax=ax,三图合一图

这个ax=ax 挺神奇的,我的理解,就是把一个钉子钉在一张图上,然后在另一张图也钉同样的钉子,做个记号,最后把这三张图蒙版合并处理成一张。关键是,要有同一个记号。经过我们上课的解答,老师说 ax=ax 其实句式是 “ ax=(任何值)” 。

来来来,看大招了!

为了更加直观清晰,我们需要在同一个图表中,把三类不同品种的数据,用不同的颜色表示,是怎么操作的:

使用布尔索引的方法分别获取三个品种的数据

我觉得超级好看!

版权声明:本文由彩民之家高手论坛发布于编程技术,转载请注明出处:文科生学Python系列10: Pandas鸢尾花案例【彩民之家