南大《探索数据的奥秘》课件示例代码笔记07

简介: 南大《探索数据的奥秘》课件示例代码笔记07

Chp5-4

2019 年 12 月 20 日

In [2]: # 看数据在不同组的分布
import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
my_data = pd.read_csv("C:\Python\Scripts\my_data\Titanic.csv")
my_plot_data=my_data[['Pclass']].groupby(['Pclass']).size()
print(my_plot_data)
my_plot_data.plot(kind='bar')
Pclass
1 216
2 184
3 491
dtype: int64
Out[2]: <matplotlib.axes._subplots.AxesSubplot at 0x194437b8>

20210604111412939.png

In [3]: # 分组统计
print('表 1. 按仓位等级分组求船费、年龄、同行平辈人数、同行父母和子女人数的均值')
print(my_data[['Fare','Age','SibSp','Parch','Pclass']].groupby(['Pclass']).mean())
print('\n\n表 2. 按仓位等级分组求船费、年龄、同行平辈人数、同行父母和子女人数的标准差')
print(my_data[['Fare','Age','SibSp','Parch','Pclass']].groupby(['Pclass']).std())
表 1. 按仓位等级分组求船费、年龄、同行平辈人数、同行父母和子女人数的均值
Fare Age SibSp Parch
Pclass
1 84.154687 38.233441 0.416667 0.356481
2 20.662183 29.877630 0.402174 0.380435
3 13.675550 25.140620 0.615071 0.393075
表 2. 按仓位等级分组求船费、年龄、同行平辈人数、同行父母和子女人数的标准差
Fare Age SibSp Parch
Pclass
1 78.380373 14.802856 0.611898 0.693997
2 13.417399 14.001077 0.601633 0.690963
3 11.778142 12.495398 1.374883 0.888861
In [4]: # 借助分组、筛选的图形化描述
gender_dst_org=my_data[['Sex']].groupby(['Sex']).size()
print('数据文件中全部非空数据的性别情况')
print(gender_dst_org,'\n')
my_filter=my_data[my_data.Survived==1] #dataframe 的数据筛选
gender_dst_srv=my_filter[['Sex']].groupby(['Sex']).size()
print('数据文件中幸存者的性别情况')
print(gender_dst_srv,'\n')
my_tmp=pd.concat([gender_dst_org,gender_dst_srv],axis=1)
# 数据连接, axis=1 表示增加列
my_plot_data=my_tmp.rename(columns={0:'Total',1:'Survived'}) # 列重命名
print(my_plot_data)
my_plot_data.plot(kind='bar')
数据文件中全部非空数据的性别情况
Sex
female 314
male 577
dtype: int64
数据文件中幸存者的性别情况
Sex
female 233
male 109
dtype: int64
Total Survived
Sex
female 314 233
male 577 109
Out[4]: <matplotlib.axes._subplots.AxesSubplot at 0x17111ac8>


20210604111425248.png

In [73]: import pandas as pd
import numpy as np
my_data=dmy_data = pd.read_csv("C:\Python\Scripts\my_data\iris.csv",header=None,
names=['sepal_length','sepal_width','petal_length',
'petal_width','target'])
#my_data.head(5)
my_set=set(my_data['target']) # 创建一个类别名集合
print(my_set)
my_set_list=list(my_set) #set 不能直接访问其元素,转换成 list 后可以访问
colors=list()
palette={my_set_list[0]:"red",my_set_list[1]:"green",my_set_list[2]:"blue"}
# 字典,给三种类别对应散点图中的三种 marker_color
#print(my_data['target'])
for n,row in enumerate(my_data['target']): # 根据类别为每个样本设置绘图颜色
colors.append(palette[my_data['target'][n]])
#print(colors)
# 对 my_data 中的数值型数据,每两个特征绘制散点图
scatterplot=pd.plotting.scatter_matrix(my_data,alpha=0.3,
figsize=(10,10), diagonal='hist',color=colors,
marker='o',grid=True)
{'setosa', 'virginica', 'versicolor'}


20210604111621688.png


目录
相关文章
|
7月前
|
存储 算法 C++
标准模版库 知识点总结 C++程序设计与算法笔记总结(八) 北京大学 郭炜(上)
标准模版库 知识点总结 C++程序设计与算法笔记总结(八) 北京大学 郭炜(上)
32 0
|
7月前
|
存储 算法 搜索推荐
标准模版库 知识点总结 C++程序设计与算法笔记总结(八) 北京大学 郭炜(下)
标准模版库 知识点总结 C++程序设计与算法笔记总结(八) 北京大学 郭炜(下)
38 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记15
南大《探索数据的奥秘》课件示例代码笔记15
36 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记06
南大《探索数据的奥秘》课件示例代码笔记06
59 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记08
南大《探索数据的奥秘》课件示例代码笔记08
45 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记13
南大《探索数据的奥秘》课件示例代码笔记13
48 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记09
南大《探索数据的奥秘》课件示例代码笔记09
51 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记02
南大《探索数据的奥秘》课件示例代码笔记02
53 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记04
南大《探索数据的奥秘》课件示例代码笔记04
94 0
|
12月前
南大《探索数据的奥秘》课件示例代码笔记03
南大《探索数据的奥秘》课件示例代码笔记03
49 0