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


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.