2016-08-10 2 views
0

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

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

Одна важная категориальная переменная имеет 200 уровней в данных поезда и имеет только 50 уровней в данных скоринга. На самом деле они разделяют только 20 уровней.

Итак, каков правильный способ справиться с такой ситуацией? следует ли ограничивать уровни пересечением уровней или сохранять их как это или что? Bests.

ответ

0

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

  1. Первый вариант - ничего не делать и видеть, какой результат вы получите.
  2. Во-вторых, чтобы нормализовать значения. Устанавливая их все в одном и том же масштабе соответственно от 0 до 1.
  3. Вы также можете попробовать биннинг, я не уверен, что это находится в R.

Я не эксперт, но я обнаружил, делая некоторые испытания и пробовать различные методы не больно. Программа Я использую в школе называется Weka это бесплатно и открыла источник плюс есть обучающее видео, которые познакомят вас с теорией позади анализа данных http://www.cs.waikato.ac.nz/ml/index.html

+0

Довольно уверены, что они говорят о категорическом var, а не непрерывном. Хотя я мог ошибаться. – Frank

0

При использовании тестового набора данных, чтобы проверить вашу модель, вам нужно будет фильтровать вне уровней, отсутствующих в вашем тестовом наборе данных (при условии, что ваша модель не может обрабатывать недостающие уровни).

В качестве альтернативы вы можете переделать свои данные в тестовые и обучающие наборы, где все уровни в тестовом наборе присутствуют в наборе обучения. Функция createDataParition из пакета caret сделает это за вас - например, см. here.

Смежные вопросы