Что делать с коллинеарными переменными

11

Отказ от ответственности: это для домашнего проекта.

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

>with(diamonds, cor(data.frame(Table, Depth, Carat.Weight)))
                   Table       Depth Carat.Weight
Table         1.00000000 -0.41035485   0.05237998
Depth        -0.41035485  1.00000000   0.01779489
Carat.Weight  0.05237998  0.01779489   1.00000000

Таблица и глубина зависят друг от друга, но я все еще хочу включить их в мою прогнозную модель. Я провел некоторое исследование алмазов и обнаружил, что Таблица и Глубина - это длина поперек вершины и расстояние от верха до низа алмаза. Поскольку эти цены на бриллианты, похоже, связаны с красотой, а красота, кажется, соотносится с пропорциями, я собирался включить их соотношение, скажем, , чтобы предсказать цены. Это стандартная процедура для работы с коллинеарными переменными? Если нет, то что?TableDepth

Изменить: Вот график Глубина ~ Таблица: введите описание изображения здесь

Майк Флинн
источник
1
+1 за интересный вопрос, но, нет, это определенно не стандартная процедура для работы с коллинеарными переменными. Надеюсь, кто-то даст вам хороший ответ, почему бы и нет. Это все еще может быть полезно в вашем случае ...
Питер Эллис
3
Кажется странным то, что корреляция -0,4 предполагает, что алмазы, которые длиннее в верхней части, короче сверху вниз. Это кажется нелогичным - уверены, что это правильно?
Питер Эллис
В общем, покажет только линейную зависимость, верно? Что если и были нелинейно связаны? В таком случае, будет ли какой-нибудь аналог коллинеарности, который создает проблему? Или это только линейная зависимость проблема. т б л е Д е р т чcorTableDepth
curious_cat
@PeterEllis Мне сказали, что это реальный набор данных, да. Глядя на график Depth ~ Table, это может быть связано с тем, что дисперсия разветвляется для высоких значений таблицы.
Майк Флинн

Ответы:

14

Эти переменные взаимосвязаны.

Степень линейной ассоциации, подразумеваемая этой корреляционной матрицей, недостаточно высока, чтобы переменные считались коллинеарными.

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

Одним из способов обнаружения мультиколлинеарности является проверка декомпозиции корреляционной матрицы Холецки - если есть мультиколлинеарность, будут некоторые диагональные элементы, близкие к нулю. Вот она на вашей собственной корреляционной матрице:

> chol(co)
     [,1]       [,2]       [,3]
[1,]    1 -0.4103548 0.05237998
[2,]    0  0.9119259 0.04308384
[3,]    0  0.0000000 0.99769741

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

Как видите, наименьшая диагональ равна 0,91, что еще далеко от нуля.

В отличие от этого вот некоторые почти коллинеарные данные:

> x<-data.frame(x1=rnorm(20),x2=rnorm(20),x3=rnorm(20))
> x$x4<-with(x,x1+x2+x3+rnorm(20,0,1e-4))
> chol(cor(x))
   x1         x2         x3           x4
x1  1 0.03243977 -0.3920567 3.295264e-01
x2  0 0.99947369  0.4056161 7.617940e-01
x3  0 0.00000000  0.8256919 5.577474e-01
x4  0 0.00000000  0.0000000 7.590116e-05   <------- close to 0.
Glen_b - Восстановить Монику
источник
Спасибо, я думаю, что я был просто запутан между "коррелированными" и "коллинеарными"
Майк Флинн
@kingledion Пожалуйста, не используйте комментарии, чтобы попытаться заставить людей ответить на ваш вопрос.
Glen_b
6

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

введите описание изображения здесь

PS. Комментарий @PeterEllis: Тот факт, что «алмазы, которые длиннее по верху, короче сверху вниз», может иметь смысл таким образом: Предположим, что все необработанные алмазы примерно прямоугольные (скажем). Теперь резец должен выбрать свой разрез с этим ограничивающим прямоугольником. Это вводит компромисс. Если ширина и длина увеличиваются, вы идете за бриллиантами большего размера. Возможно, но реже и дороже. Есть смысл?

curious_cat
источник
2

Следует избегать использования коэффициентов в линейной регрессии. По сути, вы говорите, что если бы линейная регрессия была выполнена для этих двух переменных, они были бы линейно коррелированы без перехвата; это явно не тот случай. Смотрите: http://cscu.cornell.edu/news/statnews/stnews03.pdf

Кроме того, они измеряют скрытую переменную - размер (объем или площадь) алмаза. Рассматривали ли вы преобразование ваших данных в меру площади поверхности / объема вместо включения обеих переменных?

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

TLJ
источник
1

Из корреляции трудно сделать вывод, действительно ли таблица и ширина коррелируют. Коэффициент, близкий к + 1 / -1, сказал бы, что они коллинеарны. Это также зависит от размера выборки. Если у вас есть больше данных, используйте их для подтверждения.

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

Subspacian
источник
1
Я не уверен, что согласен с этим. Я думаю, корреляция равна r = - 41, что является разумной величиной для корреляции. Учитывая вероятное N (исходя из взгляда на график), я ожидаю, что r будет очень «значимым». Вопрос о том, достаточно ли коррелированы Таблица и Глубина, чтобы их можно было назвать «коллинеарными», будет вопросом определения (хотя я бы и не назвал это проблематичной коллинеарностью). Наконец, я бы с осторожностью исключил одну из переменных, если r не было очень близко к | 1 | (например, ~ .99) - я не могу сказать, если это то, что вы имеете в виду.
gung - Восстановить Монику
1

Что заставляет вас думать, что таблица и глубина вызывают коллинеарность в вашей модели? По одной только матрице корреляции трудно сказать, что эти две переменные вызовут проблемы коллинеарности. Что совместный F-тест говорит вам о вкладе обеих переменных в вашу модель? Как упомянул curious_cat, Пирсон не может быть лучшей мерой корреляции, когда отношения не являются линейными (возможно, оценка на основе ранга?). VIF и толерантность могут помочь количественно определить степень коллинеарности, которую вы можете иметь.

Я думаю, что ваш подход использования их отношения является подходящим (хотя не как решение коллинеарности). Когда я увидел фигуру, я сразу же подумал об общем измерении в исследованиях в области здравоохранения, каково соотношение талии и бедер. Хотя в данном случае это больше похоже на ИМТ (вес / рост ^ 2). Если соотношение легко интерпретируемое и интуитивно понятное в вашей аудитории, я не вижу причин не использовать его. Тем не менее, вы можете использовать обе переменные в вашей модели, если нет явных доказательств коллинеарности.

Томас Шпайдель
источник