相关关系图示
散点图矩阵
需要同时考察多个变量间的相关关系时,一一绘制它们间的简单散点图会十分麻烦。此时可利用散点图矩阵来同时绘制各变量间的散点图,从而快速发现多个变量间的主要相关性,这在进行多元线性回归时显得尤为重要。
线性相关性指标
catering_sale_all.xls
日期 | 百合酱蒸凤爪 | 翡翠蒸香茜饺 | 金银蒜汁蒸排骨 | 乐膳真味鸡 | 蜜汁焗餐包 | 生炒菜心 | 铁板酸菜豆腐 | 香煎韭菜饺 | 香煎罗卜糕 | 原汁原味菜心 |
---|---|---|---|---|---|---|---|---|---|---|
2015/1/1 | 17 | 6 | 8 | 24 | 13 | 13 | 18 | 10 | 10 | 27 |
2015/1/2 | 11 | 15 | 14 | 13 | 9 | 10 | 19 | 13 | 14 | 13 |
2015/1/3 | 10 | 8 | 12 | 13 | 8 | 3 | 7 | 11 | 10 | 9 |
2015/1/4 | 9 | 6 | 6 | 3 | 10 | 9 | 9 | 13 | 14 | 13 |
2015/1/5 | 4 | 10 | 13 | 8 | 12 | 10 | 17 | 11 | 13 | 14 |
2015/1/6 | 13 | 10 | 13 | 16 | 8 | 9 | 12 | 11 | 5 | 9 |
2015/1/7 | 9 | 7 | 13 | 8 | 5 | 7 | 10 | 8 | 10 | 7 |
2015/1/8 | 9 | 12 | 13 | 6 | 7 | 8 | 6 | 12 | 11 | 5 |
2015/1/12 | 6 | 8 | 8 | 3 | 4 | 5 | 5 | 7 | 10 | |
2015/1/13 | 9 | 11 | 13 | 6 | 8 | 7 | 6 | 9 | 8 | 9 |
2015/1/14 | 6 | 7 | 8 | 9 | 4 | 7 | 8 | 5 | 3 | 10 |
2015/1/15 | 5 | 9 | 4 | 7 | 8 | 9 | 15 | 9 | 13 | 9 |
2015/1/16 | 9 | 7 | 11 | 9 | 11 | 8 | 14 | 9 | 9 | 15 |
2015/1/17 | 10 | 8 | 10 | 6 | 14 | 13 | 16 | 9 | 4 | 14 |
2015/1/18 | 13 | 12 | 12 | 10 | 9 | 11 | 8 | 12 | 9 | 15 |
2015/1/19 | 4 | 8 | 12 | 11 | 9 | 7 | 10 | 6 | 11 | 11 |
2015/1/20 | 6 | 12 | 10 | 9 | 11 | 4 | 8 | 14 | 6 | 13 |
2015/1/21 | 9 | 15 | 4 | 12 | 7 | 9 | 1 | 5 | 12 | 8 |
2015/1/22 | 3 | 10 | 13 | 13 | 13 | 8 | 13 | 5 | 11 | 11 |
2015/1/23 | 8 | 7 | 9 | 20 | 5 | 12 | 8 | 7 | 8 | 11 |
2015/1/24 | 11 | 6 | 11 | 8 | 7 | 8 | 9 | 7 | 10 | 9 |
2015/1/25 | 11 | 6 | 5 | 15 | 7 | 14 | 14 | 7 | 6 | 8 |
2015/1/26 | 4 | 7 | 10 | 7 | 6 | 10 | 9 | 12 | 7 | 5 |
2015/1/27 | 7 | 5 | 6 | 7 | 12 | 15 | 6 | 12 | 9 | 4 |
2015/1/28 | 8 | 8 | 12 | 14 | 8 | 11 | 7 | 12 | 10 | 6 |
2015/1/29 | 4 | 10 | 12 | 9 | 7 | 8 | 8 | 10 | 10 | 11 |
2015/1/30 | 6 | 7 | 7 | 11 | 7 | 7 | 9 | 16 | 10 | 11 |
2015/1/31 | 8 | 5 | 11 | 10 | 8 | 11 | 8 | 10 | 10 | 9 |
2015/2/1 | 8 | 6 | 7 | 9 | 6 | 4 | 6 | 11 | 6 | 9 |
Python程序
#coding: utf-8
# correlation_analyze.py
import matplotlib.pyplot as plt
from numpy import nan as NA
import pandas as pd
plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
# 读取数据源
xlsFilename = "catering_sale_all.xls"
df = pd.read_excel(xlsFilename, index_col='日期')
# 计算pearson相关系数
correlaction = df.corr()
print(correlaction)
百合酱蒸凤爪 | 翡翠蒸香茜饺 | 金银蒜汁蒸排骨 | 乐膳真味鸡 | 蜜汁焗餐包 | 生炒菜心 | 铁板酸菜豆腐 | 香煎韭菜饺 | 香煎罗卜糕 | 原汁原味菜心 | |
---|---|---|---|---|---|---|---|---|---|---|
百合酱蒸凤爪 | 1 | 0.009206 | 0.016799 | 0.455638 | 0.098085 | 0.308496 | 0.204898 | 0.127448 | -0.090276 | 0.428316 |
翡翠蒸香茜饺 | 0.009206 | 1 | 0.304434 | -0.012279 | 0.058745 | -0.180446 | -0.026908 | 0.062344 | 0.270276 | 0.020462 |
金银蒜汁蒸排骨 | 0.016799 | 0.304434 | 1 | 0.035135 | 0.096218 | -0.18429 | 0.187272 | 0.121543 | 0.077808 | 0.029074 |
乐膳真味鸡 | 0.455638 | -0.012279 | 0.035135 | 1 | 0.016006 | 0.325462 | 0.297692 | -0.068866 | -0.030222 | 0.421878 |
蜜汁焗餐包 | 0.098085 | 0.058745 | 0.096218 | 0.016006 | 1 | 0.308454 | 0.502025 | 0.155428 | 0.171005 | 0.527844 |
生炒菜心 | 0.308496 | -0.180446 | -0.18429 | 0.325462 | 0.308454 | 1 | 0.369787 | 0.038233 | 0.049898 | 0.122988 |
铁板酸菜豆腐 | 0.204898 | -0.026908 | 0.187272 | 0.297692 | 0.502025 | 0.369787 | 1 | 0.095543 | 0.157958 | 0.567332 |
香煎韭菜饺 | 0.127448 | 0.062344 | 0.121543 | -0.068866 | 0.155428 | 0.038233 | 0.095543 | 1 | 0.178336 | 0.049689 |
香煎罗卜糕 | -0.090276 | 0.270276 | 0.077808 | -0.030222 | 0.171005 | 0.049898 | 0.157958 | 0.178336 | 1 | 0.08898 |
原汁原味菜心 | 0.428316 | 0.020462 | 0.029074 | 0.421878 | 0.527844 | 0.122988 | 0.567332 | 0.049689 | 0.08898 | 1 |