Чи категорична змінна година дня?


24

Чи категоричною є змінна "година дня", де значення може бути 0, 1, 2, ..., 23? Мені б сподобатися сказати "ні", оскільки 5, наприклад, "ближче" до 4 або 6, ніж до 3 або 7.

З іншого боку, існує розрив між 23 і 0.

Так це взагалі вважається категоричним чи ні? Зауважте, що "година" - одна з незалежних змінних, а не змінна, яку я намагаюся передбачити.


7
Що ви намагаєтеся досягти? Якщо ви підходите до моделі, чи година коваріату чи відповідь, наприклад?
gung - Відновити Моніку

2
Ви можете використовувати фіктивну змінну на кожну годину, якщо у вас є достатня кількість свободи для запасного (тобто ставитесь до категоричного) або використовуйте перші кілька термінів Фур'є, якщо ви цього не зробили. Взагалі, подумайте, як найкраще представити потенційне співвідношення з відповіддю - може слугувати одна мінлива змінна позначка при відкритті магазинів.
Scortchi

Щось на зразок години можна трактувати як «категоричне» або «числове», залежно від того, що працює найкраще. Взагалі немає правильної чи неправильної відповіді - це залежить від того, що працює найкраще. Я рекомендую спробувати різні речі та побачити, що найкраще працює у вашій ситуації.
круглий круг

Відповіді:


29

Залежно від того, що ви хочете моделювати, години (та багато інших атрибутів, таких як пори року) - це насправді порядкові циклічні змінні. У разі сезонів ви можете вважати їх більш-менш категоричними, а в разі годин - ви також можете їх моделювати як безперервні.

Однак використання годин у вашій моделі у формі, яка не піклується про циклічність для вас, не буде корисною. Натомість намагайтеся придумати якусь трансформацію. Використовуючи години, ви можете використовувати тригонометричний підхід

xhr = sin(2*pi*hr/24)
yhr = cos(2*pi*hr/24)

Таким чином, ви б замість цього використали xhrі yhrдля моделювання. Дивіться, наприклад, цей пост: Використання кругових предикторів при лінійній регресії .


2
(+1) Чи можете ви детальніше пояснити різницю між сезонами та годинами?
Scortchi

Хм, я думаю, що сезони мають подібне значення, як ранок, полудень та вечір, коли говорити про години протягом дня. Імхо, коли доступна лише розпливчаста інформація та роздільна здатність (як 4 значення в сезони), вважаючи їх категоричними та використовуючи фіктивні змінні для кодування здається розумним. :-)
Drey

1
Я вважаю, що ключовим моментом є те, оскільки тригени використовуються лише 4 сезони. Підхід порівняно з категоричним представленням ви заощаджуєте лише 1 ступінь свободи - за години дня ви заощаджуєте 21 ступінь свободи. (І якщо вам не потрібно їх шкодувати, тоді xhr = sin(4*pi*hr/24), yhr = cos(4*pi*hr/24)і так далі можна додати до того моменту, коли при достатній кількості спостережень ви можете також ставитися до годин дня як категоричні.)
Scortchi - Відновіть Моніку

Або заглянути в циклічні сплайни .
kjetil b halvorsen

1

Година дня не найкраще представлена ​​як категоріальна змінна, оскільки існує природне впорядкування значень. Наприклад, колір волосся категоричний, тому що впорядкування категорій не має значення - {червоний, коричневий, білявий} є таким же дійсним, як і {блондин, коричневий, рудий}. Година дня, з іншого боку, має природне впорядкування - 9 ранку ближче до 10 ранку або 8 ранку, ніж до 18 вечора. Його найкраще розглядати як дискретну порядкову змінну. Він має додаткову характеристику бути циклічним, оскільки 12:00 слід 11 вечора та передує 1 годині ночі.


Чи не існує природного упорядкування значень певних категоричних змінних?
dsaxton

Так, але в цьому випадку вони краще описуються як порядкові. Звичайні змінні - це категоріальні змінні, що мають природну послідовність.
Ядерна Ванга

1
То як би ви представляли дискретну, порядкову, циклічну змінну як предиктор у регресійній моделі?
Scortchi

0

Теоретично це залежить від того, як ви форматуєте змінну, тобто вона може бути "безперервною" (моделюється з одним коефіцієнтом) або категоричною (коефіцієнт на "годину" дня). Ви також можете виконати суміш обох, наприклад, функцій, що розгортаються.

Практично, оскільки 0 і 23 по суті є однаковою «годиною» дня, я б розглядав можливість групування періодів дня у більші, більш однорідні та достовірні угруповання. Наприклад, з кроком 8 годин - 8 ранку до 4 вечора, 4 години вечора та 12-8 ранку.


4
0 і 23 - це окремі години. 0 і 24 були б тією ж годиною.
Пол Райнерс

BTW, я припускаю, що за коментарем Гунга, що година дня - це незалежна змінна, а не модельована залежна змінна. Моя думка, що 0 і 23 не так вже й відрізняються в реальності - ви б сказали, що існує статистична різниця між модельованою подією, що відбувається в 23:59 проти 0:01?
Френк Х.

1
Не впевнений, яку проблему викидання інформації передбачається вирішити. Дивіться, яка користь від розриву безперервної змінної предиктора? .
Scortchi

@Scortchi - як йдеться у публікації, ви приймаєте на себе постійні стосунки, які бінінг "викидає" інформацію. Але якщо це не так, то бінінг - це більш відповідна трансформація. І це передбачає, що у вас є достатньо даних для початку, про які ОП не згадувала.
Френк Х.

Накладати обмеження на відношення між передбачувачем та відповіддю, саме по собі не є поганою справою - оскільки ви перший у цій публікації, який вивів, скільки доступних спостережень є важливим питанням, - але нав'язане цим подання години дня - рівна з восьми до п’ятнадцятої години, зі стрибком або падінням у шістнадцяту тощо - здається дивним пропозицією для загальноприйнятого підходу.
Scortchi
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.