2015-12-16 7 views
0

Мне нравится находить корреляцию для строк и сравнивать корреляцию между строками. Но я могу найти корреляцию между столбцами.Мне нравится находить корреляцию между строками?

   A B C D 
1 11132217  2 3 2 2      
1 111441829  2 2 0 2    
1 12082926  0 2 3 2    
1 150547747  0 0 3 2    
1 151239051  0 2 2 2    
1 161594100  0 3 3 2    

Я использовал эту команду, но это не сработало.

sapply(1:nrow(data), function(i) cor(data[i,])) 

Меня интересует?

ответ

1

Возможно, я не понимаю ваш вопрос, но cor может вводить данные и делать то, что вам нужно по столбцам. Так почему бы не просто перенести ваши данные, то сделать это:

cor(t(data)

  11132217 111441829 12082926 150547747 151239051 161594100 
11132217 1.0000000 0.3333333 0.1324532 -0.5555556 0.3333333 0.4714045 
111441829 0.3333333 1.0000000 -0.6622662 -0.7777778 -0.3333333 -0.4714045 
12082926 0.1324532 -0.6622662 1.0000000 0.7505683 0.9271726 0.9365858 
150547747 -0.5555556 -0.7777778 0.7505683 1.0000000 0.5555556 0.4714045 
151239051 0.3333333 -0.3333333 0.9271726 0.5555556 1.0000000 0.9428090 
161594100 0.4714045 -0.4714045 0.9365858 0.4714045 0.9428090 1.0000000 
+0

Спасибо за ваш ответ. Я выполнил ваш код, но получил NA? – star

+1

@star Я использовал ваши данные выше. Концепция должна работать. Возможно, данные хранятся смешно. Может быть, с факторами? Может быть, dataframe не является правильным типом –

+0

@star попытаться опубликовать, что 'ddput (head (data))' таким образом, мы получаем именно то, что вы используете –

 Смежные вопросы

  • Нет связанных вопросов^_^