Посмотрите на этот график Excel:
Линия наилучшего соответствия «здравого смысла» будет представлять собой почти вертикальную линию, проходящую через центр точек (отредактировано вручную красным цветом). Однако линейная линия тренда, определенная в Excel, представляет собой показанную диагональную черную линию.
- Почему Excel создал что-то, что (для человеческого глаза) кажется неправильным?
- Как я могу получить линию наилучшего соответствия, которая выглядит немного более интуитивно понятной (то есть что-то вроде красной линии)?
Обновление 1. Электронная таблица Excel с данными и графиком доступна здесь: пример данных , CSV в Pastebin . Доступны ли методы регрессии типа 1 и типа 2 как функции Excel?
Обновление 2. Данные представляют параплан, поднимающийся в термике, в то время как дрейфующий с ветром. Конечная цель состоит в том, чтобы исследовать, как сила и направление ветра зависит от высоты. Я инженер, а не математик или статистик, поэтому информация в этих ответах дала мне гораздо больше областей для исследований.
источник
Ответы:
Есть ли зависимая переменная?
Линия тренда в Excel основана на регрессии зависимой переменной «lat» на независимую переменную «lon». То, что вы называете «линией здравого смысла», можно получить, если вы не назначите зависимую переменную и одинаково относитесь к широте и долготе. Последний может быть получен путем применения PCA . В частности, это один из собственных векторов ковариационной матрицы этих переменных. Вы можете думать об этом как о линии, минимизирующей кратчайшее расстояние от любой данной точки до самой линии, т.е. вы рисуете перпендикуляр к линии и минимизируете сумму этих значений для каждого наблюдения.( хя, уя)
Вот как вы можете сделать это в R:
Хотите ли вы относиться к переменным одинаково или нет, зависит от цели. Это не присущее качество данных. Вы должны выбрать правильный статистический инструмент для анализа данных, в этом случае выберите регрессию и PCA.
Ответ на вопрос, который не был задан
Итак, почему в вашем случае (регрессия) линия тренда в Excel не кажется подходящим инструментом для вашего случая? Причина в том, что линия тренда - это ответ на вопрос, который не задавался. Вот почему
Представь, что ветра не было. Параплан будет делать один и тот же круг снова и снова. Какой будет линия тренда? Очевидно, что это будет плоская горизонтальная линия, ее наклон будет нулевым, но это не значит, что ветер дует в горизонтальном направлении!
R код для симуляции:
Таким образом, направление ветра явно совершенно не соответствует линии тренда. Они связаны, конечно, но нетривиальным образом. Следовательно, мое утверждение о том, что линия тренда Excel является ответом на какой-то вопрос, но не тот, который вы задали.
Почему спс?
Как вы заметили, есть как минимум две составляющие движения параплана: дрейф с ветром и круговое движение, управляемое парапланом. Это хорошо видно при подключении точек на вашем графике:
С одной стороны, круговые движения действительно доставляют вам неудобства: вы заинтересованы в ветре. Хотя, с другой стороны, вы не наблюдаете скорость ветра, вы только наблюдаете за парапланом. Итак, ваша цель - вывести ненаблюдаемый ветер из показаний местоположения наблюдаемого параплана. Именно в такой ситуации могут быть полезны такие инструменты, как факторный анализ и PCA.
Цель PCA состоит в том, чтобы выделить несколько факторов, которые определяют множественные выходные данные, анализируя корреляции в выходных данных. Это эффективно, когда выходные данные линейно связаны с факторами, что имеет место в ваших данных: дрейф ветра просто добавляет к координатам кругового движения, поэтому PCA работает здесь.
Настройка PCA
Итак, мы установили, что у PCA должен быть шанс, но как мы его на самом деле настроим? Давайте начнем с добавления третьей переменной, времени. Мы собираемся назначить время от 1 до 123 каждому 123 наблюдению, предполагая постоянную частоту дискретизации. Вот как выглядит трехмерный график данных, показывая его спиральную структуру:
Следующий график показывает воображаемый центр вращения параплана в виде коричневых кружков. Вы можете видеть, как он дует на лат-плоскость с ветром, в то время как параплан, показанный с синей точкой, кружит вокруг него. Время на вертикальной оси. Я подключил центр вращения к соответствующему месту на параплане, показывая только первые два круга.
Соответствующий код R:
Дрейф центра вращения параплана вызван, главным образом, ветром, а траектория и скорость дрейфа соотносятся с направлением и скоростью ветра, ненаблюдаемыми переменными, представляющими интерес. Вот как выглядит дрейф при проекции на плоскость широты:
PCA регрессия
Итак, ранее мы установили, что регулярная линейная регрессия здесь не очень хорошо работает. Мы также решили, почему: потому что это не отражает основной процесс, потому что движение параплана очень нелинейно. Это комбинация кругового движения и линейного дрейфа. Мы также обсудили, что в этой ситуации факторный анализ может быть полезным. Вот схема одного из возможных подходов к моделированию этих данных: регрессия PCA . Но кулак я покажу вам PCA регрессии оборудованных кривой:
Это было получено следующим образом. Запустите PCA для набора данных, который имеет дополнительный столбец t = 1: 123, как обсуждалось ранее. Вы получаете три основных компонента. Первый просто т. Второй соответствует столбцу lon, а третий - столбцу lat.
Вот и все. Чтобы получить подогнанные значения, вы восстанавливаете данные из подогнанных компонентов, вставляя транспонирование матрицы вращения PCA в предсказанные главные компоненты. Мой код R выше показывает части процедуры, а остальное вы можете легко понять.
Заключение
Интересно посмотреть, насколько мощным является PCA и другие простые инструменты, когда дело доходит до физических явлений, когда базовые процессы стабильны, а входы преобразуются в выходы посредством линейных (или линеаризованных) отношений. Таким образом, в нашем случае круговое движение очень нелинейное, но мы легко линеаризовали его, используя функции синуса / косинуса для параметра времени t. Мои графики были созданы с помощью нескольких строк кода R, как вы видели.
Модель регрессии должна отражать базовый процесс, тогда только вы можете ожидать, что ее параметры значимы. Если это параплан, дрейфующий на ветру, то простой график рассеяния, как в оригинальном вопросе, будет скрывать временную структуру процесса.
Кроме того, регрессия Excel была анализом поперечного сечения, для которого лучше всего работает линейная регрессия, в то время как ваши данные представляют собой процесс временных рядов, где наблюдения упорядочены по времени. Анализ временных рядов должен быть применен здесь, и это было сделано в регрессии PCA.
Примечания о функции
источник
Ответ, вероятно, связан с тем, как вы мысленно оцениваете расстояние до линии регрессии. Стандартная (тип 1) регрессия минимизирует квадрат ошибки, где ошибка рассчитывается на основе вертикального расстояния до линии .
Тип 2 регрессии может быть более аналогичным вашему суждению о лучшей линии. В этом квадрате минимизированная ошибка - это перпендикулярное расстояние до линии . Это различие имеет ряд последствий. Одним из важных моментов является то, что если вы поменяете оси X и Y на своем графике и восстановите линию, вы получите различное соотношение между переменными для регрессии типа 1. Для регрессии типа 2 отношения остаются прежними.
У меня сложилось впечатление, что существует довольно много споров о том, где использовать регрессию типа 1 против типа 2, и поэтому я предлагаю внимательно прочитать различия, прежде чем принимать решение о том, что применять. Регрессия типа 1 часто рекомендуется в тех случаях, когда одна ось контролируется экспериментально или, по крайней мере, измеряется с гораздо меньшей ошибкой, чем другая. Если эти условия не выполняются, регрессия типа 1 сместит наклоны к 0, и поэтому рекомендуется регрессия типа 2. Однако при достаточном шуме в обеих осях регрессия типа 2, по-видимому, имеет тенденцию смещать их в сторону 1. Warton et al. (2006) и Smith (2009) являются хорошими источниками для понимания дебатов.
Также обратите внимание, что есть несколько тонко различных методов, которые попадают в широкую категорию регрессии типа 2 (большая ось, уменьшенная большая ось и стандартная регрессия большой оси), и что терминология в отношении конкретных методов противоречива.
Warton, DI, IJ Wright, DS Falster и M. Westoby. 2006. Двусторонние методы подгонки линии для аллометрии. Biol. Откр. 81: 259–291. DOI: 10,1017 / S1464793106007007
Smith, RJ 2009. Об использовании и неправильном использовании уменьшенной большой оси для подгонки линии. Am. J. Phys. Anthropol. 140: 476-486. DOI: 10.1002 / ajpa.21090
РЕДАКТИРОВАТЬ :
@amoeba указывает, что то, что я называю регрессией типа 2 выше, также известно как ортогональная регрессия; это может быть более подходящим термином. Как я уже говорил выше, терминология в этой области противоречива, что требует дополнительной осторожности.
источник
Вопрос, на который пытается ответить Excel: «Предполагая, что y зависит от x, какая строка предсказывает y лучше всего». Ответ в том, что из-за огромных различий в y никакая строка не может быть особенно хорошей, и то, что Excel показывает, - лучшее, что вы можете сделать.
Если вы возьмете предложенную красную линию и продолжите ее до x = -0,714 и x = -0,712, вы обнаружите, что ее значения находятся далеко от графика и находятся на огромном расстоянии от соответствующих значений y ,
Вопрос, на который отвечает Excel, заключается не в том, «какая линия ближе к точкам данных», а в том, «какая линия лучше всего предсказать значения y по значениям x», и он делает это правильно.
источник
Я не хочу ничего добавлять к другим ответам, но хочу сказать, что вас сбила с толку плохая терминология, в частности термин «линия наилучшего соответствия», который используется в некоторых курсах статистики.
Интуитивно понятно, что «линия наилучшего соответствия» будет выглядеть как ваша красная линия. Но линия, созданная в Excel, не является «линией наилучшего соответствия»; это даже не попытка быть. Это строка, которая отвечает на вопрос: учитывая значение х, каков мой лучший прогноз для у? или, в качестве альтернативы, каково среднее значение y для каждого значения x?
Обратите внимание на асимметрию между x и y; использование названия «линия наилучшего соответствия» скрывает это. Так же как и в Excel использование «линии тренда».
Это очень хорошо объяснено по следующей ссылке:
https://www.stat.berkeley.edu/~stark/SticiGui/Text/regression.htm
Возможно, вы захотите что-то более похожее на то, что называется «Тип 2» в ответе выше, или «Линия SD» на странице курса статистики Беркли.
источник
Часть оптической проблемы исходит от разных шкал - если вы используете одну и ту же шкалу на обеих осях, она будет выглядеть уже по-разному.
Другими словами, вы можете сделать так, чтобы большинство таких «наиболее подходящих» линий выглядели «неинтуитивно», расширяя масштаб по одной оси.
источник
Несколько человек отметили, что проблема визуальная - графическое масштабирование приводит к вводящей в заблуждение информации. Точнее говоря, масштабирование «lon» таково, что оно кажется жесткой спиралью, что говорит о плохой подгонке линии регрессии (оценка, с которой я согласен, красная линия, которую вы проведете, обеспечит более низкие квадратные ошибки, если данные были сформированы в порядке, представленном).
Ниже я приведу диаграмму рассеяния, созданную в Excel, с измененным масштабом для «lon», чтобы она не создавала плотную спираль в диаграмме рассеяния. С этим изменением линия регрессии теперь обеспечивает лучшее визуальное соответствие, и я думаю, помогает продемонстрировать, как масштабирование в исходной диаграмме рассеяния дало ошибочную оценку соответствия.
Я думаю, что регрессия работает хорошо здесь. Я не думаю, что необходим более сложный анализ.
Для любого заинтересованного, я нанес на график данные, используя инструмент отображения и показать регрессию, подогнанную к данным. Красные точки - это записанные данные, а зеленые - линия регрессии.
И вот те же данные на графике рассеяния с линией регрессии; здесь lat рассматривается как зависимый, а оценки lat меняются местами, чтобы соответствовать географическому профилю.
источник
Вы путаете обычную регрессию наименьших квадратов (OLS) (которая минимизирует сумму квадратов отклонения относительно прогнозируемых значений, (наблюдаемых-предсказанных) ^ 2) и регрессию по главной оси (которая минимизирует суммы квадратов перпендикулярного расстояния между каждой точкой и линия регрессии, иногда это упоминается как регрессия типа II, ортогональная регрессия или стандартизированная регрессия основного компонента).
Если вы хотите сравнить два подхода только в R, просто посмотрите
То, что вы находите наиболее интуитивно понятным (ваша красная линия), это просто регрессия по главной оси, которая, визуально говоря, действительно выглядит наиболее логичной, поскольку она минимизирует перпендикулярное расстояние до ваших точек. Регуляция OLS будет отображаться только для минимизации перпендикулярного расстояния до ваших точек, если переменные x и y находятся на одной шкале измерения и / или имеют одинаковую величину ошибки (вы можете увидеть это просто на основании теоремы Пифагора). В вашем случае ваша переменная y имеет гораздо больший разброс, поэтому разница ...
источник
Ответ PCA является лучшим, потому что я думаю, что именно это вам следует делать, учитывая описание вашей проблемы, однако ответ PCA может смешивать PCA и регрессию, которые являются совершенно разными вещами. Если вы хотите экстраполировать этот конкретный набор данных, то вам нужно сделать регрессию и, вероятно, захотите сделать регрессию Деминга (что, я думаю, иногда происходит с Типом II, никогда не слышал об этом описании). Однако, если вы хотите выяснить, какие направления являются наиболее важными (собственные векторы) и имеют метрику их относительного влияния на набор данных (собственные значения), тогда PCA является правильным подходом.
источник