单变量分析绘图(针对拿到的数据,运用图进行特征关系分析)
%matplotlib inline
import numpy as np
import pandas as pd
from scipy import stats, integrate
import matplotlib.pyplot as plt
import seaborn as sns
sns.set(color_codes=True)
np.random.seed(sum(map(ord, "distributions")))
x = np.random.normal(size=100)
sns.distplot(x,kde=False) # x数据 kde是否做核密度估计
<matplotlib.axes._subplots.AxesSubplot at 0x1c1efe94208>

output_1_1.png
sns.distplot(x, bins=20, kde=False) #切分20个bins(箱子)
<matplotlib.axes._subplots.AxesSubplot at 0x1c1efed05c0>

output_2_1.png
数据分布情况
x = np.random.gamma(6, size=200)
sns.distplot(x, kde=False, fit=stats.gamma) #Gamma分布密度函数
<matplotlib.axes._subplots.AxesSubplot at 0x1c1efc6eef0>

output_4_1.png
根据均值和协方差生成数据
mean, cov = [0, 1], [(1, .5), (.5, 1)] #指定均值 和协方差
data = np.random.multivariate_normal(mean, cov, 200) #由均值 和协方差生成一个数据
df = pd.DataFrame(data, columns=["x", "y"])
df

image.png
观测两个变量之间的分布关系最好用散点图
sns.jointplot(x="x", y="y", data=df); # 绘制出 单变量直方图 及 散点图 (用于分析当前特征与特征之间的关系)

output_8_0.png
x, y = np.random.multivariate_normal(mean, cov, 1000).T
with sns.axes_style("white"): #设置白色主题风格
sns.jointplot(x=x, y=y, kind="hex", color="k") #数据量大,看特征关系及分布(通过颜色深浅,看出值的组合多少) 设置为hex

output_9_0.png
pairplot的应用
【pairplot 绘制出数据中 单特征的直方图 以及特征与特征之间的散点图】!!强!!
iris = sns.load_dataset("iris")
sns.pairplot(iris) #
<seaborn.axisgrid.PairGrid at 0x1c1f0529f98>

output_10_1.png