<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 如何計算Python中的非參數秩相關性 > 原文: [https://machinelearningmastery.com/how-to-calculate-nonparametric-rank-correlation-in-python/](https://machinelearningmastery.com/how-to-calculate-nonparametric-rank-correlation-in-python/) 相關性是兩個變量之間關聯的度量。 當兩個變量都具有良好理解的高斯分布時,很容易計算和解釋。當我們不知道變量的分布時,我們必須使用非參數秩相關方法。 在本教程中,您將發現用于量化具有非高斯分布的變量之間的關聯的等級相關方法。 完成本教程后,您將了解: * 排名相關方法如何工作以及方法是否可用。 * 如何在Python中計算和解釋Spearman的秩相關系數。 * 如何在Python中計算和解釋Kendall的秩相關系數。 讓我們開始吧。 ## 教程概述 本教程分為4個部分;他們是: 1. 等級相關 2. 測試數據集 3. 斯皮爾曼的秩相關 4. 肯德爾的秩相關 ## 等級相關 相關性是指兩個變量的觀測值之間的關聯。 變量可能具有正關聯,這意味著隨著一個變量的值增加,另一個變量的值也增加。該關聯也可以是否定的,意味著隨著一個變量的值增加,其他變量的值減小。最后,關聯可能是中性的,這意味著變量不相關。 相關性量化這種關聯,通常作為值-1到1之間的度量,完全負相關和完全正相關。計算的相關性被稱為“_相關系數_。”然后可以解釋該相關系數以描述測量。 請參閱下表以幫助解釋相關系數。 ![Table of Correlation Coefficient Values and Their Interpretation](img/9df1f69048629bc7373155535c3a80df.jpg) 相關系數值表及其解釋 取自“非統計學家的非參數統計:逐步法”。 可以使用諸如Pearson相關的標準方法來計算每個具有高斯分布的兩個變量之間的相關性。此過程不能用于沒有高斯分布的數據。相反,必須使用等級相關方法。 [秩相關](https://en.wikipedia.org/wiki/Rank_correlation)是指使用值之間的序數關系而不是特定值來量化變量之間的關聯的方法。序數據是具有標簽值并具有順序或等級關系的數據;例如:'_低_','_培養基_'和'_高_'。 可以針對實值變量計算秩相關性。這是通過首先將每個變量的值轉換為等級數據來完成的。這是值的排序位置,并賦予整數排名值。然后可以計算秩相關系數以量化兩個排序變量之間的關聯。 因為沒有假設值的分布,所以秩相關方法被稱為無分布相關或非參數相關。有趣的是,秩相關度量通常被用作其他統計假設檢驗的基礎,例如確定兩個樣本是否可能來自相同(或不同)的人口分布。 秩相關方法通常以研究人員或開發該方法的研究人員的名字命名。秩相關方法的四個例子如下: * 斯皮爾曼的秩相關。 * 肯德爾的秩相關。 * Goodman和Kruskal的秩相關。 * 薩默斯的秩相關。 在接下來的部分中,我們將仔細研究兩種更常見的排名相關方法:Spearman和Kendall。 ## 測試數據集 在我們演示秩相關方法之前,我們必須首先定義一個測試問題。 在本節中,我們將定義一個簡單的雙變量數據集,其中每個變量是從均勻分布(例如非高斯分布)繪制的,第二個變量的值取決于第一個值的值。 具體而言,從均勻分布中抽取1,000個隨機浮點值的樣本,并縮放到0到20的范圍。從0到10之間的均勻分布中抽取1,000個隨機浮點值的第二個樣本,并將其添加到第一個創建關聯的示例。 ```py # prepare data data1 = rand(1000) * 20 data2 = data1 + (rand(1000) * 10) ``` 下面列出了完整的示例。 ```py # generate related variables from numpy.random import rand from numpy.random import seed from matplotlib import pyplot # seed random number generator seed(1) # prepare data data1 = rand(1000) * 20 data2 = data1 + (rand(1000) * 10) # plot pyplot.scatter(data1, data2) pyplot.show() ``` 運行該示例將生成數據樣本并繪制散點圖上的點。 我們可以清楚地看到每個變量具有均勻分布,并且通過從圖的左下到右上角的點的對角分組可以看到變量之間的正相關。 ![Scatter Plot of Associated Variables Drawn From a Uniform Distribution](img/5526515d599bf88315d47cc795fab9d4.jpg) 從均勻分布繪制的相關變量的散點圖 ## 斯皮爾曼的秩相關 [斯皮爾曼的等級相關](https://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient)以查爾斯斯皮爾曼命名。 它也可以稱為斯皮爾曼相關系數,并用小寫希臘字母rho(p)表示。因此,它可以被稱為Spearman的rho。 該統計方法量化了排序變量與單調函數相關聯的程度,意味著增加或減少的關系。作為統計假設檢驗,該方法假設樣本不相關(不能拒絕H0)。 > Spearman等級相關是一種統計過程,旨在測量順序測量尺度上兩個變量之間的關系。 - 第124頁,[非統計學家的非參數統計:循序漸進的方法](https://amzn.to/2HevldG),2009。 Spearman等級相關性的直覺是它使用秩值而不是實際值來計算Pearson相關性(例如,相關性的參數度量)。 Pearson相關性是通過兩個變量的方差或擴展歸一化的兩個變量之間的協方差(或平均觀測值的預期差異)的計算。 Spearman的等級相關性可以使用 [spearmanr()SciPy函數](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.spearmanr.html)在Python中計算。 該函數將兩個實值樣本作為參數,并返回介于-1和1之間的相關系數以及用于解釋系數重要性的p值。 ```py # calculate spearman's correlation coef, p = spearmanr(data1, data2) ``` 我們可以在測試數據集上演示Spearman的等級相關性。我們知道數據集中的變量之間存在很強的關聯,我們希望Spearman的測試能夠找到這種關聯。 The complete example is listed below. ```py # calculate the spearman's correlation between two variables from numpy.random import rand from numpy.random import seed from scipy.stats import spearmanr # seed random number generator seed(1) # prepare data data1 = rand(1000) * 20 data2 = data1 + (rand(1000) * 10) # calculate spearman's correlation coef, p = spearmanr(data1, data2) print('Spearmans correlation coefficient: %.3f' % coef) # interpret the significance alpha = 0.05 if p > alpha: print('Samples are uncorrelated (fail to reject H0) p=%.3f' % p) else: print('Samples are correlated (reject H0) p=%.3f' % p) ``` 運行該示例計算測試數據集中兩個變量之間的Spearman相關系數。 統計檢驗報告與0.9的值呈強正相關。 p值接近于零,這意味著在給定樣本不相關的情況下觀察數據的可能性是非常不可能的(例如95%置信度),并且我們可以拒絕樣本不相關的零假設。 ```py Spearmans correlation coefficient: 0.900 Samples are correlated (reject H0) p=0.000 ``` ## 肯德爾的秩相關 [Kendall的等級相關](https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient)以Maurice Kendall的名字命名。 它也被稱為肯德爾的相關系數,系數通常用小寫希臘字母tau(t)表示。反過來,測試可能被稱為肯德爾的頭。 測試的直覺是它計算兩個樣本之間匹配或一致排名數的標準化分數。因此,該測試也稱為肯德爾的一致性測試。 Kendall的秩相關系數可以使用 [kendalltau()SciPy函數](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.kendalltau.html)在Python中計算。測試將兩個數據樣本作為參數,并返回相關系數和p值。作為統計假設檢驗,該方法假設(H0)兩個樣本之間沒有關聯。 ```py # calculate kendall's correlation coef, p = kendalltau(data1, data2) ``` 我們可以在測試數據集上演示計算,我們確實希望報告顯著的正關聯。 The complete example is listed below. ```py # calculate the kendall's correlation between two variables from numpy.random import rand from numpy.random import seed from scipy.stats import kendalltau # seed random number generator seed(1) # prepare data data1 = rand(1000) * 20 data2 = data1 + (rand(1000) * 10) # calculate kendall's correlation coef, p = kendalltau(data1, data2) print('Kendall correlation coefficient: %.3f' % coef) # interpret the significance alpha = 0.05 if p > alpha: print('Samples are uncorrelated (fail to reject H0) p=%.3f' % p) else: print('Samples are correlated (reject H0) p=%.3f' % p) ``` 運行該示例將Kendall的相關系數計算為0.7,這是高度相關的。 與Spearman測試一樣,p值接近于零(并打印為零),這意味著我們可以放心地拒絕樣本不相關的零假設。 ```py Kendall correlation coefficient: 0.709 Samples are correlated (reject H0) p=0.000 ``` ## 擴展 本節列出了一些擴展您可能希望探索的教程的想法。 * 列舉三個示例,其中計算非參數相關系數在機器學習項目期間可能是有用的。 * 更新每個示例以計算從非高斯分布中提取的不相關數據樣本之間的相關性。 * 加載標準機器學習數據集并計算所有變量之間的成對非參數相關性。 如果你探索任何這些擴展,我很想知道。 ## 進一步閱讀 如果您希望深入了解,本節將提供有關該主題的更多資源。 ### 圖書 * [非統計人員的非參數統計:循序漸進的方法](https://amzn.to/2HevldG),2009年。 * [應用非參數統計方法](https://amzn.to/2GCKnfW),第四版,2007。 * [秩相關方法](https://amzn.to/2JofYzY),1990。 ### API * [scipy.stats.spearmanr()API](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.spearmanr.html) [scipy.stats.kendalltau()API](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.kendalltau.html) ### 用品 * [維基百科上的非參數統計](https://en.wikipedia.org/wiki/Nonparametric_statistics) * [維基百科上的排名相關](https://en.wikipedia.org/wiki/Rank_correlation) * [Spearman在維基百科上的等級相關系數](https://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient) * [維基百科上的肯德爾等級相關系數](https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient) * [Goodman和Kruskal在維基百科上的伽瑪](https://en.wikipedia.org/wiki/Goodman_and_Kruskal%27s_gamma) * [維基百科上的Somers'D](https://en.wikipedia.org/wiki/Somers%27_D) ## 摘要 在本教程中,您發現了用于量化具有非高斯分布的變量之間的關聯的等級相關方法。 具體來說,你學到了: * 排名相關方法如何工作以及方法是否可用。 * 如何在Python中計算和解釋Spearman的秩相關系數。 * 如何在Python中計算和解釋Kendall的秩相關系數。 你有任何問題嗎? 在下面的評論中提出您的問題,我會盡力回答。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看