2013-03-21 2 views
-1

Я хочу, чтобы вычислить корреляцию между НФ и пФ только для значений соответствуют половине (высоких значений) PКак рассчитать корреляцию с условием из разных переменных?

P=c(1,6,5,6,2,8,5) 
    sf=c(1,2,6,6,4,5,5) 
    Pf=c(1,6,5,8,4,8,5) 
    cor(sf,Pf) 

Любая помощь, пожалуйста?

+0

Похож на тривиальную проблему. См. Вопрос https://stackoverflow.com/questions/6760284/how-to-calculate-correlation-in-r?rq=1 – Doc

ответ

4

Если я вас правильно понял, то это следует сделать трюк

cor(sf[P > median(P)], Pf[P > median(P)]) 

Так как вы хотите топ 50% P, это соответствует значениям P больше, чем медиана.

+0

Вы * попробовали * его * данные *? Я получаю '[1] 0,9707253' на данные, которые вы опубликовали. – Arun