2013-06-20 4 views
0

Мне нужно приписать отсутствующие значения. Мой набор данных содержит около 800 000 строк и 92 переменных. Я попробовал kNNImpute в пакете вменения в r, но похоже, что набор данных слишком велик. Любые другие пакеты/методы в R? Я бы предпочел не использовать среднее значение для замены отсутствующих значений. спасибоВменение в больших данных

+0

Существует даже представление задачи для вменения в CRAN: http://cran.r-project.org/web/views/OfficialStatistics.html Но, вероятно, этот вопрос лучше подходит для stats.exchange. ком?Возможно, вам также следует объяснить, каким образом ваш «набор данных слишком велик». – Beasterfield

ответ

4

1) Вы можете попробовать

library(sos) 
findFn("impute") 

Это показывает 400 матчей в 113 пакетов. Это показывает 400 совпадений в 113 пакетах: вы можете сузить его по вашим требованиям функции вменения.

2) Вы видели/попробовали Hmisc?

Описание: Библиотека Hmisc содержит множество функций, полезных для данных анализа, графики высокого уровня, полезные операции, функции для вычисления размера выборки и мощности, импортирование наборов данных, вменения отсутствующих значений, расширенные таблицы решений, переменных кластеризация, манипуляция символьной строкой, преобразование объектов S в код LaTeX и переменные перекодировки.

3) Возможно mice

Многократное вменение, используя Полностью Условный Спецификация (FCS) реализуемого алгоритма MICE. Каждая переменная имеет свою собственную модель вменения . Встроенные модели вменения приведены для непрерывных данных (прогнозное среднее соответствие, нормальное), двоичных данных (логистическая регрессия), неупорядоченных категориальных данных (многотомная логистика регрессии) и упорядоченных категориальных данных (пропорциональные коэффициенты). MICE может также передавать непрерывные двухуровневые данные (нормальная модель, панорамирование, переменные второго уровня ). Пассивное вменение может использоваться для поддержания согласованности между переменными . Для диагностики доступны различные диагностические схемы.

1

MICE - отличный пакет с мощными диагностическими инструментами и может выполнять работу в таком большом наборе данных.

О чем вы должны знать: MICE - S-L-O-W. Работая над таким большим набором данных, если вы намереваетесь использовать MICE, я настоятельно рекомендую вам использовать вычислительное облако - в противном случае вам лучше планировать себя заранее, потому что с матрицей 800k x ~ 100 может потребоваться несколько дней, чтобы выполнить работу, в зависимости от того, как вы укажете свою модель.

MICE предлагает вам несколько различных методов вменения, которые будут использоваться в соответствии с типом переменной, подлежащей вменению. Самый быстрый из них - прогностическое среднее соответствие. Первоначально ПММ предполагалось использовать для приведения в движение непрерывных данных, но, похоже, pmm достаточно гибкий, чтобы вмещать другие типы переменных. Взгляните на сообщение Пола Аллисона и ответ Стефа ван Буурена: http://statisticalhorizons.com/predictive-mean-matching

(Я вижу, что это трехлетняя должность, но я использую MICE и был поражен тем, насколько мощным - и часто медленным - это может быть!)

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