日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Numpy_协方差与相关系数

發(fā)布時(shí)間:2024/1/1 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Numpy_协方差与相关系数 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

協(xié)方差與相關(guān)系數(shù)

  • 協(xié)方差與相關(guān)系數(shù)
    • 協(xié)方差
    • 相關(guān)系數(shù)

1.協(xié)方差

如果兩個(gè)變量的變化趨勢(shì)一致,也就是說(shuō)如果其中一個(gè)大于自身的期望值時(shí)另外一個(gè)也大于自身的期望值,那么兩個(gè)變量之間的協(xié)方差就是正值;如果兩個(gè)變量的變化趨勢(shì)相反,即其中一個(gè)變量大于自身的期望值時(shí)另外一個(gè)卻小于自身的期望值,那么兩個(gè)變量之間的協(xié)方差就是負(fù)值。

可以通俗的理解為:兩個(gè)變量在變化過(guò)程中是同方向變化?還是反方向變化?同向或反向程度如何??
你變大,同時(shí)我也變大,說(shuō)明兩個(gè)變量是同向變化的,這時(shí)協(xié)方差就是正的;?
你變大,同時(shí)我變小,說(shuō)明兩個(gè)變量是反向變化的,這時(shí)協(xié)方差就是負(fù)的;?
從數(shù)值來(lái)看,協(xié)方差的數(shù)值越大,兩個(gè)變量同向程度也就越大。反之亦然。

Cov(X,Y)=1mi=1m(xi?xˉ)(yi?yˉ)

import numpy as npa = np.array([1,2,3]) b = np.array([4,3,4]) x = np.vstack((a,b)) np.cov(a, b) np.cov(a, b, bias=True) np.cov(x)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

輸出:

>>> np.cov(a, b) array([[ 1. , 0. ],[ 0. , 0.33333333]])>>> np.cov(a, b, bias=True) array([[ 0.66666667, 0. ],[ 0. , 0.22222222]])>>> np.cov(x) array([[ 1. , 0. ],[ 0. , 0.33333333]])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

這里使用numpy庫(kù)的cov函數(shù)來(lái)計(jì)算協(xié)方差,輸出結(jié)果為一個(gè)協(xié)方差矩陣,results[i][j]表示第i個(gè)變量與第j個(gè)變量的協(xié)方差,比如np.cov(x)的結(jié)果為

>>> np.cov(x) array([[ 1. , 0. ],[ 0. , 0.33333333]])
  • 1
  • 2
  • 3

x為變量矩陣,x的第 i 行表示第 i 個(gè)隨機(jī)變量,這里第0個(gè)隨機(jī)變量與第0個(gè)隨機(jī)變量的協(xié)方差為1,第0個(gè)隨機(jī)變量與第1個(gè)隨機(jī)變量的協(xié)方差為0,第1個(gè)隨機(jī)變量與第0個(gè)隨機(jī)變量的協(xié)方差為0,第1個(gè)隨機(jī)變量與第1個(gè)隨機(jī)變量的協(xié)方差為0.33333333.

還有一點(diǎn)就是bais參數(shù)的意義,默認(rèn)為False,那么計(jì)算均值的時(shí)候除以 n - 1,如果設(shè)為T(mén)rue,那么計(jì)算均值的時(shí)候除以n,其中n為隨機(jī)變量的維度數(shù)。具體理論涉及到統(tǒng)計(jì)學(xué)知識(shí),可以參考知乎回答。

numpy的cov函數(shù)使用的三點(diǎn):

  • 變量矩陣的一行表示一個(gè)隨機(jī)變量;
  • bais參數(shù)控制計(jì)算時(shí)除以n-1還是n, True表示除以n,False表示除以n-1;
  • 輸出結(jié)果是一個(gè)協(xié)方差矩陣, results[i][j]表示第i個(gè)隨機(jī)變量與第j個(gè)隨機(jī)變量的協(xié)方差.
  • 2. 相關(guān)系數(shù)

    相關(guān)系數(shù)是用以反映變量之間相關(guān)關(guān)系密切程度的統(tǒng)計(jì)指標(biāo)。相關(guān)系數(shù)也可以看成協(xié)方差:一種剔除了兩個(gè)變量量綱影響、標(biāo)準(zhǔn)化后的特殊協(xié)方差,它消除了兩個(gè)變量變化幅度的影響,而只是單純反應(yīng)兩個(gè)變量每單位變化時(shí)的相似程度。

    r=Cov(X,Y)δx??δy??

    并且

    |r|1

    其中,δx,δy表示X,Y的方差。

    import numpy as npa = np.array([1,2,3]) b = np.array([2,5,8]) x = np.vstack((a,b)) np.corrcoef(a, b) np.corrcoef(x)
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    輸出

    >>> np.corrcoef(a, b) array([[ 1., 1.],[ 1., 1.]])>>> np.corrcoef(x) array([[ 1., 1.],[ 1., 1.]])
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    numpy中函數(shù)corrcoef的用法與函數(shù)cov的用法相似,只是corrcoef中bais參數(shù)不起作用。

    numpy的cov函數(shù)使用的兩點(diǎn):

  • 變量矩陣的一行表示一個(gè)隨機(jī)變量;
  • 輸出結(jié)果是一個(gè)相關(guān)系數(shù)矩陣, results[i][j]表示第i個(gè)隨機(jī)變量與第j個(gè)隨機(jī)變量的相關(guān)系數(shù).
  • 總結(jié)

    以上是生活随笔為你收集整理的Numpy_协方差与相关系数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。