(erbqi)导语
QQ图全称 Quantile-Quantile图,也就是分位数-分位数图,简单理解就是把两个分布相同分位数的值,构成点(x,y)绘图;如果两个分布很接近,那个点(x,y)会分布在y=x直线附近;反之则不;可以通过QQ图从整体评估回归模型的预测效果
QQ图一般有两种,正态QQ图和普通QQ图,区别在于正态QQ图中其中有一个分布是正态分布,下面来看下这两种分布
正态QQ图
下图来自这里 使用Filliben's estimate来确定n分点
下面我们尝试绘制正态QQ图
使用开源库自带函数,很简单,但是可能一些细节看不到
import numpy as np from matplotlib import pyplot as plt import matplotlib matplotlib.style.use('ggplot') # 用正态分布随机生死100个数据 x = np.round(np.random.normal(loc=0.0, scale=1.0, size=100),2) from scipy.stats import probplot f = plt.figure(figsize=(8, 6)) ax = f.add_subplot(111) probplot(x, plot=ax) plt.show()
下面展开一些细节,为下面我们的普通QQ做点铺垫
import sys,os import pandas as pd import numpy as np from scipy.stats import norm,linregress