相關分析與安斯庫姆四重奏陷阱—基於Python金融場景實操

哲學告訴我們:世界是一個普遍聯繫的有機整體,現象之間客觀上存在著某種有機聯繫,一種現象的發展變化,必然受與之關聯的其他現象發展變化的制約與影響。

在統計學中,這種依存關係可以分為相關關係和回歸函數關係兩大類,本次分享,jacky將跟您分享如何用python做相關分析;

本文的亮點在後半部分,我將與您一起探討安斯庫姆四重奏,並以真實金融案例為依託,深入淺出,探討相關分析在實際工作中應用。

(一)基礎鋪墊

  • 相關係數(correlation coefficient)
    • 相關係數是變數間關聯程度的最基本測度之一,如果我們想知道兩個變數之間的相關性,那麼我們就可以計算相關係數,進行判定。
  • 相關係數基本特徵
    • 低度相關:0 ≤ |r|< 0.3
    • 中度相關:0.3 ≤ |r|< 0.8
    • 高度相關:0.8 ≤ |r|< 1
    • 正相關:兩個變數變化方向相同
    • 負相關:兩個變數變化方向相反
    • 方向
    • 量級(magnitude)
  • 散點圖
    • 在進行相關分析之前,通常會繪製散點圖來觀察變數之間的相關性,如果這些數據在二維坐標軸中構成的數據點分布在一條直線上的周圍,那麼就說明變數間存在線性相關關係,如下圖所示:

(二)如何用Python計算相關係數

1.計算公式

2.案例實操

我們知道影響金融產品銷量的因素很多,作為用戶來講,最直接的參考指標一定是產品的利率,金融機構為了吸引更多的用戶能夠持有或購買某項金融產品時,往往會推出加息活動,那麼加息活動這個變數與實際銷量之間是否存在相關關係?——下面jacky與您一同探討與解決這個問題:

(1)手工寫代碼計算相關係數

  • 根據相關係數的計算公式,我們首先要計算出每個向量的z分數
    • z分數的計算公式:每個值減去向量的均值再除以標準差 ZX=(X-XMean)/XSD

#---author:朱元祿---nimport numpynX = [52,19,7,33,2]nY = [162,61,22,100,6]nn#均值nXMean = numpy.mean(X)nYMean = numpy.mean(Y)nn#標準差nXSD = numpy.std(X)nYSD = numpy.std(Y)nn#z分數nZX = (X-XMean)/XSDnZY = (Y-YMean)/YSD n

  • 根據上面相關係數的計算公司,我們套公式,手工計算一下:

  • 可以在python內直接計算:

#相關係數nr = numpy.sum(ZX*ZY)/(len(X)) n

(2)使用numpy的corrcoef方法計算

numpy.corrcoef(X,Y) n

  • 我們可以看到用corrcoef計算的值和我們手工計算的值是一樣的,這裡計算得到的是一個對稱矩陣,對角線的位置都是1,代表向量和本身完全自相關,1行2列和2行1列的值一樣,因為第一個向量和第二個向量的相關係數等於第二個向量和第一個向量的相關係數,所以為對稱矩陣。

(3)使用pandas.DataFrame的corr方法計算

import pandasndata = pandas.DataFrame({X:X,Y:Yn})ndata.corr() n

(三)更深入的探討:安斯庫姆四重奏陷阱

相關係數是理解兩個向量是否相關的非常好用的指標,但是在實際工作中,我們不能過分依賴相關係數,為什麼這麼說呢?因為統計指標是有局限性的。

1.Anscombe』s quartet

  • 統計學裡大名鼎鼎的Anscombe』s quartet是什麼?(jacky有時真搞不懂統計學一些術語的翻譯,quartet怎就翻譯成了「四重奏」,既然得到了統計大佬們的公認,我也不好多說了)
  • 先看下下面四個散點圖,這四幅圖表述的數據特徵差異有對大,在散點圖賞是不是一目了然?

  • 下面我們來計算下它們的統計特性,竟然驚人的一樣

性質數值X的平均數9 (數據分析部落)X的方差11 (公眾號:shujudata)Y的平均數7.5Y的方差4.12X與Y之間的相關係數0.816線性回歸線y=3.00+0.500x

2.jacky解讀

首先作為晚輩,要對統計學大師的學術成果表示尊敬與尊重。

但是,在時間工作中,Anscombes quartet的數據分析陷阱是極為少見的,作為一個合格的數據科學從業者,Anscombes quartet都是會規避的:首先我們做數據清理的時候,就規避了離群值對統計的影響,並且,在機器學習,深入學習高速發展的大環境里,用方差,平均數來描述數據維度是遠遠不夠的。

對數據科學的探索,永不止境;在巨人的肩膀上,是你我的機會,更是這個時代留給我們最好的禮物!

推薦閱讀:

大數據時代的入門書單(一)
Kaggle 入門:探索泰坦尼克號事故倖存情況分析
發達地區的年輕男性
Python數據分析及可視化實例之車輛MPG數據(21)

TAG:数据挖掘 | 数据分析 | 机器学习 |