2015-04-26 3 views
-1

У меня есть кадр данных, который выглядит следующим образом (реальные из них имеет 7000 + строк и 17 столбцов):Спирмена - попарно корреляции

 V1 V2 V3 V4 
1 93 98 79 170 
2 17 17 22 85 
3 1 57 137 320 
4 9 1  0  440 
5 NA NA NA 22 

Я хотел бы сделать попарные корреляции Спирмена для каждой колонки, и экстракт оценки коэффициентов корреляции для каждого попарного сравнения.

Я попробовал функцию ткор, но выход только NA:

rcor.test(data.matrix(data), method = "spearman") 

     V1  V2  V3  V4 
V1 ****** NA  NA  NA 
V2 <0.001 *****  NA  NA 
V3 <0.001 <0.001 ***** NA 
V3 <0.001 <0.001 <0.001 ***** 

Я не уверен, что я делаю неправильно, я пытался использовать кадр данных в виде матрицы, но не повезло

Есть идеи?

+1

Какие классы данных, Э.И. 'sapply (data, class)' дает вам? С вашим примером 'rcor.test (data, method =" spearman ")' работает отлично. Хотя верхний треугольник, который должен быть «NA», и нижний треугольник может быть действительным, если у вас очень низкая корреляция. В любом случае, если у вас есть классы «factor», 'data.matrix' будет их неправильно преобразовывать –

+0

Все классы являются числовыми – user3188922

+0

Если я использую простой cor.test для двух столбцов, он отлично работает – user3188922

ответ

0

У меня была аналогичная проблема и use="pairwise.complete.obs" решена она