回分類題庫
d065: 3.斯皮爾曼等級相關係數
關鍵字: 103年台中區複賽

測資點 : 3 | Time Limit : 1000 ms | Memory Limit : 32000 KB
Accepted : 121 Times / 118 Users | Submit : 232 Times / 129 Users | Accepted rate : 91%
題目加入時間 : 2015-09-07 14:52

Content: 简体中文

在統計學中,斯皮爾曼等級相關係數,經常用希臘字母ρ表示,它是衡量兩個變量X與Y的相關性的指標。如果變量X或Y中沒有重複值,並且當兩個變量完全單調相關時,斯皮爾曼等級相關係數則為+1或−1。對於樣本數為n的樣本,計算斯皮爾曼等級相關係數時先將n個原始數據Xi, Yi (i=1, 2, …, n) 被轉換成等級數據xi, yi 。等級數據乃是依原始數據依據其在整體數據中由小至大排序,轉換成一個正整數代表其該數據的等級,最小為1,第二小為2, 最大為n)。

斯皮爾曼等級相關係數ρ可以由以下公式計算 

其中 di=xi-yi,代表兩個等級數據的差值。

假設輸入資料如下,我們要使用下表所給的原始數據計算智商(X)和其每週花在電視上的小時數(Y)的相關性。 

 

計算之步驟詳述如下,首先,我們必須根據以下步驟計算出di2,如下表所示。 

  1. 排列第一列數據(Xi),計算第三列xi並賦以等級值1, 2, 3, ..., n。
  2. 排列第二列數據(Yi),計算第四列yi並賦以等級值1, 2, 3, ..., n。應注意數據間(Xi, Yi)的配對關係要維持不變。
  3. 計算第五列di=xi-yi兩個等級列的差值。
  4. 計算最後一列di2保存di的平方。 

 

根據di2計算公式得 ∑i=1di2 =194。樣本數n為10,將這些值代入方程式計算斯皮爾曼等級相關係數得

(取小數點後三位四捨五入)。

Input:

輸入資料第一列包含一個正整數n(<50),表示樣本數。接下來有兩列資料,第一列為變數X資料,第二列為變數Y資料,數字與數字間以一個空白做間隔。

Output:

輸出斯皮爾曼等級相關係數(取小數點後三位四捨五入)

註:大於 0 的值前面請輸出一個加號 + 。 

Sample Input:help

若題目沒有特別說明,則應該以多測資的方式讀取,若不知如何讀取請參考 a001 的範例程式。
輸入1:
10
86 97 99 100 101 103 106 110 112 113
0 20 28 27 50 29 7 17 6 12

輸入2:
5
101 97 99 100 86 
50 20 28 27 1 

Sample Output :

輸出1:
-0.176

輸出2:
+0.900

Hint :

Author :

103年台中區複賽 (管理員:sagit)

  Solve it!   Status Forum