Есть ли серьезная проблема с отбрасыванием наблюдений с пропущенными значениями при расчете матрицы корреляции?

12

У меня есть этот огромный набор данных с примерно 2500 переменными и примерно 142 наблюдениями.

Я хочу запустить корреляцию между переменной X и остальными переменными. Но для многих столбцов пропущены записи.

Я попытался сделать это в R, используя аргумент "pairple-complete" ( use=pairwise.complete.obs), и он вывел кучу корреляций. Но затем кто-то в StackOverflow опубликовал ссылку на эту статью http://bwlewis.github.io/covar/missing.html, и это делает метод «попарного завершения» в R непригодным для использования.

Мой вопрос: как узнать, когда уместно использовать опцию «попарно-полный»?

Мой use = complete.obsвернулся no complete element pairs, так что, если вы могли бы объяснить, что это значит тоже, это было бы здорово.

Стэн Шунпайк
источник
4
Классическая история, которую нужно знать, это история Авраама Уолда и вопрос о том, где добавить броню к самолетам во Второй мировой войне . Важно иметь некоторое представление о том, почему ваши данные отсутствуют.
Мэтью Ганн

Ответы:

11

Вопрос с корреляциями на попарно полных наблюдениях

В случае, если вы описываете, основной проблемой является интерпретация. Поскольку вы используете попарно полные наблюдения, вы фактически анализируете несколько разных наборов данных для каждой из корреляций, в зависимости от того, какие наблюдения отсутствуют.

Рассмотрим следующий пример:

a <- c(NA,NA,NA, 5, 6, 3, 7, 8, 3)
b <- c(2, 8, 3, NA,NA,NA, 6, 9, 5)
c <- c(2, 9, 6, 3, 2, 3, NA,NA,NA) 

Три переменные в наборе данных, a, bи c, каждый из них имеет некоторые недостающие значения. Если вы вычислите корреляции для пар переменных здесь, вы сможете использовать только те случаи, в которых отсутствуют пропущенные значения для обеих рассматриваемых переменных. В этом случае это означает, что вы будете анализировать только последние 3 случая для корреляции между aи b, только первые три случая для корреляции между bиc т. Д.

Тот факт, что вы анализируете совершенно разные случаи, когда вычисляете каждую корреляцию, означает, что результирующий паттерн корреляций может выглядеть бессмысленным. Увидеть:

> cor(a,b, use = "pairwise.complete.obs")
[1] 0.8170572
> cor(b,c, use = "pairwise.complete.obs")
[1] 0.9005714
> cor(a,c, use = "pairwise.complete.obs")
[1] -0.7559289

Это выглядит как логическое противоречие --- aи bсильно положительно коррелируют, а bи cтакже сильно положительно коррелируют, поэтому можно было бы ожидать aи cбыть положительно коррелируют , а также, но на самом деле сильная связь в направлении , противоположном. Вы можете понять, почему многим аналитикам это не нравится.

Изменить, чтобы включить полезные разъяснения от whuber:

Обратите внимание, что часть аргумента зависит от того, что может означать «сильная» корреляция. Вполне возможно, что aи bтак же, как bи « cбыть строго положительно коррелированными», в то время как существует «сильная ассоциация в противоположном направлении» между aи c, но не так сильно, как в этом примере. Суть дела в том, что оценочная матрица корреляции (или ковариации) может не быть положительно определенной: именно так следует количественно определять «сильную».

Проблема с типом пропущенности

Вы можете подумать: «Ну, разве это не нормально, просто предполагать, что подмножество случаев, которые я имею в наличии для каждой корреляции, более или менее соответствует той же схеме, что и я, если бы у меня были полные данные?» И да, это правда - нет ничего принципиально неправильного в вычислении корреляции для подмножества ваших данных (хотя вы теряете точность и мощность, конечно, из-за меньшего размера выборки), если доступные данные являются случайными Образец всех данных, которые были бы там, если бы у вас не было никаких пропусков.

Когда пропущение является чисто случайным, это называется MCAR (пропадает совершенно случайно). В этом случае анализ подмножества данных, в которых отсутствуют пропуски, не будет систематически смещать ваши результаты, и было бы маловероятно (но не невозможно) получить тот тип корреляции, который я продемонстрировал в приведенном выше примере.

Когда ваша пропущенность в некотором роде носит систематический характер (часто сокращенно MAR или NI, обозначая два разных вида систематической пропущенности), тогда у вас возникают гораздо более серьезные проблемы, как с точки зрения возможного внесения смещения в ваши расчеты, так и с точки зрения вашей способности обобщать ваши результаты для интересующей совокупности (поскольку анализируемая выборка не является случайной выборкой из совокупности, даже если бы был полный набор данных).

Есть много больших ресурсов , доступных , чтобы узнать о недостающих данных и как бороться с этим, но моя рекомендация Рубин: классический , и более недавней статье

Роуз Хартман
источник
2
aббсaс
1
@whuber Спасибо, это важный момент. Я обновил этот раздел ответа, чтобы включить это разъяснение.
Роза Хартман
7

Огромное беспокойство вызывает то, что систематически отсутствуют данные, которые могут испортить ваш анализ. Ваши данные могут отсутствовать не случайно.

Об этом говорилось в предыдущих ответах, но я подумал, что приведу пример.

Финансовый пример: недостающие доходы могут быть плохими

  • В отличие от взаимных фондов, фонды прямых инвестиций (и другие частные фонды) не обязаны по закону сообщать о своих доходах в некоторую центральную базу данных.
  • Следовательно, основная проблема заключается в том, что отчетность является эндогенной, в частности, что некоторые фирмы не будут сообщать о плохой прибыли.
  • 1NΣяряря

В этих ситуациях не обязательно все потеряно (есть вещи, которые вы можете сделать), но наивный запуск регрессии (или вычисление корреляций) для не пропущенных данных может привести к серьезным предвзятым, противоречивым оценкам истинных параметров в совокупности.

Мэтью Ганн
источник
4

Парная корреляция уместна, если ваши пропущенные данные отсутствуют в случайном порядке (MCAR). Книга Пола Эллисона « Недостающие данные» - хорошее место для начала.

Вы можете проверить это с помощью теста Little's (1988) MCAR, который входит в BaylorEdPsychкомплект поставки.

Тим
источник
1
Все еще есть повод для беспокойства: даже с данными MCAR, корреляционная матрица, оцененная посредством попарной корреляции, может не быть положительно определенной.
whuber
Конечно, но вопрос касается корреляции, он не упоминает об использовании результирующей корреляционной матрицы в качестве входных данных для какого-либо другого алгоритма. И, учитывая размер выборки, MCAR в любом случае маловероятен.
Тим
1
Если матрица не является положительно определенной, это неверная оценка. По крайней мере, нас должно беспокоить это несоответствие. Боюсь, я не понимаю, как вероятность MCAR (который является механизмом пропуска) может быть связана с размером выборки.
whuber
Аскер заинтересован в одной строке корреляционной матрицы. Есть ли у вас доказательства, показывающие, что корреляции строки недействительны, если матрица не является положительно определенной? Я хотел бы увидеть доказательства этого и обрести некоторую мудрость. MCAR, вообще говоря, довольно маловероятно с данными реального мира. При большом размере выборки мощность теста Литтла возрастает, поэтому существует большая вероятность отклонения нулевой гипотезы MCAR. Не поймите меня неправильно: я бы никогда не использовал матрицу корреляции частичных данных в качестве входных данных для многомерного метода, но вопрос не в этом.
Тим
1
Позвольте мне уточнить: я не утверждал, что корреляции "все недействительны". Я утверждал, что сбор оценок корреляции (то есть матрицы) может быть недействительным. Это бесспорно (не требуют никаких доказательств), потому что все один нужно сделать , это экспонат один экземпляр недействительной оценки, которая @RoseHartman уже сделано в этой теме. Я не буду оспаривать ваше утверждение о том, что MCAR может быть маловероятным - при условии, что оно понято в личном смысле: по вашему опыту, с типами данных, с которыми вы знакомы, MCAR встречается редко. Я не понимаю, как вы можете оправдать более широкое толкование этого утверждения.
whuber