2012-08-24 24 views
1

我們如何關聯具有不同尺度的兩個數據集/曲線,即一條曲線的y軸範圍爲(0,70000),另一條曲線的y軸範圍爲(0,150000 )。如果它們的尺寸相同,則可以使用cor()函數。我想檢查一條曲線是否與其他/兩條曲線相關。有任何想法嗎?關聯不同尺度的兩個數據集

回答

1

如果您正在尋找兩組數據之間的相關性,則相關量不依賴於數據集範圍的差異。

例如,我們可以隨機創建一個值爲y的值,然後對其進行擴展。相關仍然是1:

> y <- rnorm(100) 
> y2 <- y*2 + 20 
> cor(y, y2) 
[1] 1 

爲了進一步表明,相關的量是獨立於規模的線性變化,看與不相關的數據的情況下:

> y3 = rnorm(100) 
> cor(y, y3) 
[1] -0.05293818 
> y4 <- y3*2 + 20 
> cor(y, y4) 
[1] -0.05293818 

因此,要回答你的問題。我認爲功能cor應該仍然適合您。

0

相關性不應該取決於數據的絕對範圍,我不會這麼想。只需將一個數據集乘以一個常數,使其與另一個具有相同的範圍?

3

如果你看看definition of Pearson's product moment of correlation(這是cor默認計算的),你會發現它是一個線性算子。也就是說,如果a和b是常數,則cor(aX + b,Y)= cor(X,Y)。所以,X和Y之間的差異並不重要。請記住,這種相關性只能測量線性相關性:它們可能是「相關的」,但具有較低的相關性。例如:如果關係是非線性的,就會發生這種情況:例如:

set.seed(100) 
x <- rnorm(100) 
y <- x^2 
cor(x,y) 
# 0.1224623 
+0

這可以用來測量兩條曲線之間的相似度嗎?假設有兩個具有非常不同範圍但形狀相似的1維數據集。上述相關性能否成爲它們之間相似性的適當度量? – Kanmani

相關問題