数据分析可视化利器的简单使用示例-——seaborn

seaborn是一个建立在matplot之上,可用于制作丰富和非常具有吸引力统计图形的Python库。Seaborn库旨在将可视化作为探索和理解数据的核心部分,有助于帮人们更近距离了解所研究的数据集。无论是在kaggle官网各项算法比赛中,还是互联网公司的实际业务数据挖掘场景中,都有它的身影。

可视化所需的包与数据导入:

import numpy as np
import pandas as pd
import atplotlib.pyplot as plt
import seaborn as sns

data= pd.read_csv('data.csv')
data.head()  # 显示数据结构


Out[14]: 
   price  model    name  bodyType
0   1850   30.0     736       1.0
1   3600   40.0    2262       2.0
2   6222  115.0   14874       1.0
3   2400  109.0   71865       0.0
4   5200  110.0  111080       1.0

注:本例数据是price与model,name,bodyType这几个属性之间的分析。

统计各变量之间的相关系数

data.corr()         #显示所有变量之间的相关系数

Out[16]: 
             price     model      name  bodyType
price     1.000000  0.136932  0.002030  0.250678
model     0.136932  1.000000  0.016071  0.205892
name      0.002030  0.016071  1.000000  0.017864
bodyType  0.250678  0.205892  0.017864  1.000000

data.corr()['price']  #仅显示tip与其它变量的相关系数

Out[17]: 
price       1.000000
model       0.136932
name        0.002030
bodyType    0.250678
Name: price, dtype: float64

data['price'].corr(data['model'])

Out[18]: 0.13693212204374772

相关性图

sns.pairplot(data)    #这个数据量太大了,规律也不明显,大概看看样子吧

sns.pairplot(data,hue='bodyType') # 相关性图,和某一列的关系

sns.heatmap(data.corr())  # 相关性热力图

sns.clustermap(data.corr()) #分层相关性热力图

单个属性的分布

sns.distplot(data['price'])

sns.distplot(data['price'],kde=False)

                      

统计某单属性的分布

sns.countplot(x='bodyType',data=data)

两两属性的相关性图

sns.jointplot(x='bodyType',y='price',data=data)

两个限定表现形式的写法
sns.jointplot(x = 'bodyType', y = 'price', data = data,kind = 'reg')
sns.jointplot(x = 'bodyType', y = 'price', data = data,kind = 'kde')

箱型图统计

sns.boxplot(x='bodyType',y='price',data=data)

箱型图的含义:

sns.boxplot(x = 'bodyType', y= 'price', data = data, hue = 'sex') # 某个属性的统计,这里假定还有一个sex的属性,分为男性和女性。那么最终的箱型图在上图基础上每一个bodyType都有两个分别是男性和女性的统计。

猜你喜欢

转载自blog.csdn.net/u010420283/article/details/105625095