1. 程式人生 > >python資料預處理 :資料相關性

python資料預處理 :資料相關性

何為相關性:

相關性分析是指對具備相關性關係的變數進行分析,從而衡量變數間的相關程度或密切程度。相關性可以應用到所有資料的分析過程中,任何事物之間都是存在一定的聯絡。相關性用R(相關係數)表示,R的取值範圍是[-1, 1]

相關和因果:

相關並不是因果,例如商品銷售活動時,通常都會以較低的價格進行銷售,以此來實現較高的商品銷售量;隨著商品銷售量的提升,也給線下物流配送體系帶來了更大的壓力,會導致商品破損率增加。商品降價與商品銷售量增加為因果,而與商品破損率增加為正相關。

相關係數(R)的絕對值越接近1,則代表相關性越大,R為正代表正相關,即增長趨勢相同,R為負則為負相關,即趨勢相反。這裡的R僅指的是線性相關性,相關性還有指數關係、多項式關係、冪關係等。

python實現

import numpy as np
import pandas as pd

# 匯入資料
df = pd.read_csv('https://raw.githubusercontent.com/ffzs/dataset/master/boston/train.csv')
##### 使用pandas的corr######
# 刪除不相關資料
del df['ID']
# 獲取相關度資料
corr_pd = df.corr()
#使用seaborn做視覺化
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
# 指定畫幅
plt.figure(figsize=(8,6)) # 繪製熱力圖 sns.heatmap(corr_pd, cmap='YlGnBu')

結果如下:
在這裡插入圖片描述

##### 使用numpy的corrcoef######
corr_np = np.corrcoef(df, rowvar=0)
# 視覺化
plt.figure(figsize=(8,6))
sns.heatmap(corr_np, cmap='YlGnBu')

結果如下:
在這裡插入圖片描述