#r #regression #missing-data
Вопрос:
Если у меня есть набор данных, который выглядит следующим образом, изучая видовое богатство пауков в разных местах обитания сада.
'data.frame': 6 obs. of 5 variables:
$ ID : int 1 2 3 4 5 6
$ species_count: num 10 13 15 17 22 9
$ habitat_type : Factor w/ 2 levels "wall","tree": 1 2 1 2 1 2
$ wall_height : num 153 NA 160 NA 170 NA
$ tree_diameter: num NA 48 NA 52 NA 71
Я хочу создать фильм с species_count
зависимой переменной и habitat_type
, wall_height
и tree_diameter
в качестве независимых переменных, однако NA сложны.
lm.1 <- lm(species_count ~ habitat_type wall_height tree_diameter,
data = DF, na.action = na.exclude)
выдает следующую ошибку:
Ошибка в контрастах<-(tmp, значение = contr.funs[1 isOF[nn]]) : контрасты могут применяться только к факторам с 2 или более уровнями
как na.exclude
и na.omit
удалить все строки.
С помощью:
DF$wall_height <- na.exclude(DF$wall_height)
и
DF$tree_diameter <- na.exclude(DF$tree_diameter)
просто повторяет значения, придавая tree_diameter
значения wall
и наоборот, вот так:
DF[1,]
ID species_count habitat_type wall_height tree_diameter
1 1 10 wall 153 48
Есть ли способ опустить NA
значения только при сохранении остальной информации в строке, или мне придется использовать отдельные линейные модели?
Заранее спасибо за любую помощь и надеюсь, что я достаточно ясно объяснил проблему.
Комментарии:
1. Алгоритм наименьших квадратов работает исключительно с числами, поэтому NA невозможны. Вот почему R удаляет наблюдения с помощью NAs, что обычно приводит к смещению. Типичный рабочий процесс заключается в создании нескольких наборов данных с условными значениями, выполнении анализа по выбору для каждого из завершенных наборов данных, а затем объединении результатов с использованием статистических приемов. Такие пакеты
mice
значительно облегчают процесс «множественного вменения».2. У вас всего 6 наблюдений, как вы показываете здесь? Обратите внимание , что все случаи со значениями для
wall_height
имеют значение NA дляtree_diameter
, и наоборот, поэтому у вас вообще нет полных случаев для этих двух предикторов. Похоже, что каждый из них определен только для одного из двухhabitat_type
значений. Пожалуйста, отредактируйте свой вопрос, чтобы подробнее рассказать о том, какую гипотезу вы пытаетесь проверить, так как этот подход, похоже, не сработает.3. Всем привет, спасибо за ваши ответы. EdM, поскольку я только что создал этот набор данных в качестве примера, чтобы проиллюстрировать проблему с моим основным набором данных, да, есть только 6 наблюдений, 3 obs-стены и 3 obs-деревья.
wall_height
не относится кtree
obs и наоборот. Установка их на 0 или использование повторов приведет к искажению анализа? Майкл М., Я пришел к выводу, что мне придется использовать отдельные наборы данных и объединять их. Спасибо за предложениеmice
, посмотрим!4. Только что видел конец твоего комментария, ЭдМ. Гипотеза будет заключаться в изучении того, что влияет на богатство видов пауков в садах; выяснении, влияет ли
habitat_type
это, а затем, влияют ли различные переменные, такие какwall_height
иtree_diameter
. Мне было интересно, есть ли способ объединить их в одинlm
, но, похоже, мне придется делать это отдельно.
Ответ №1:
Фундаментальная проблема заключается в том, что
wall_height
не относится кtree
obs и наоборот.
Таким образом, нет ничего, что можно было бы получить, пытаясь проанализировать данные wall
и tree
места обитания вместе. В принципе, вы можете сравнить две среды обитания, а затем оценить, как специфические характеристики среды обитания связаны с численностью видов в пределах среды обитания.
На практике вы сталкиваетесь с проблемой очень малого количества наблюдений. Обычно вам нужно около 10 случаев для каждого предиктора, который вы используете в своей модели. Возможно, вы сможете провести адекватное сравнение 2 сред обитания, но любые результаты в пределах среды обитания, включающие только 3 наблюдения в каждой, будут весьма подозрительными.
Пара других мыслей. Во-первых, данные подсчета часто лучше анализируются с помощью модели другого типа-обобщенной линейной модели Пуассона. Во-вторых, число видов, по-видимому, представлено различным числом особей каждого из них. Вероятно, из этого следует извлечь некоторую информацию, которая должна быть объяснена в экологической литературе по видовому разнообразию.