Когда или зачем конвертировать переменную Numberri c в фактор? - PullRequest
0 голосов
/ 15 марта 2020

Я довольно новичок в R и вроде учусь сам. У меня есть набор данных с 43 переменными, и я хочу предсказать одну из тем. Некоторые из них являются числовыми c переменными, а некоторые являются факторными переменными.

Вопрос в том, что я не знаю, когда кто-то должен преобразовывать факторы в числовые значения и наоборот. В inte rnet я обнаружил, что не следует хранить переменные в виде цифры c, если они всегда принимают целочисленные значения и находятся в узком диапазоне. (Например, если значения всегда между 1 и 7).

Одна из моих переменных - "NSM", и она представляет количество секунд с полуночи для каждого дня. Значения являются целочисленными и дискретными (61200 61800 62400 63600 64200 65400 66000 66600 68400 69000 69600 70800 72000 72600 73200 et c вы можете заметить, что шаг 600). Они go от 0 до 85800.

Поэтому я хочу иметь мнение кого-то более опытного, чем я (у меня 0). Должен ли я сохранить числовые значения NSP или преобразовать их в коэффициент, а затем сгруппировать значения факторов по уровням (в противном случае у меня было бы 144 уровня, и это было бы слишком много и неактуально)

Спасибо,

Ответы [ 2 ]

0 голосов
/ 15 марта 2020

Я также самообучаюсь, как и вы, и, согласно моему пониманию этой темы c, лучше использовать факторы, когда у нас ограничены номинальные / категориальные значения, особенно в случае векторов персонажей, таких как пол («мужчина»). , "Женский"). Это избавляет нас от ошибок сравнения, связанных с такими символами, как чувствительность к регистру или орфографические ошибки.

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

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

0 голосов
/ 15 марта 2020

Я обычно конвертирую переменную в множитель, только если выполняется одно или несколько из следующих значений:

  • значения переменной представляют некоторую форму группировки, то есть переменная по своей природе категориальна.
  • требуется значительная экономия памяти - обычно это тот случай, когда символьные переменные используются для определения уровней группы.
  • переменная имеет числовую c природу, но весьма нелинейный, и нет лучшего способа ввести его в модель, чем преобразовать его в фактор с одной или двумя значимыми выбранными точками отсечения.

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

...