Nano Hash - криптовалюты, майнинг, программирование

Как вернуть NA для прогнозов, если некоторые предикторы имеют пропущенные значения

Это очень похоже на следующий вопрос: R SVM возвращает NA для прогнозы с отсутствующими данными

Однако предложенный там ответ не работает (по крайней мере, для меня). Поэтому я хотел бы быть более общим и попробовать другой подход (или скорректировать предложенный там). Я могу предсказать, используя мою модель svm для complete.cases() моего фрейма данных. Однако для меня очень важно иметь значения NA для всех строк с отсутствующими данными.

Мой теоретический подход должен быть следующим: прогнозировать на complete.cases() моего фрейма данных. Найдите индекс полных случаев. Каким-то образом привяжите столбец с прогнозами обратно к моему data.frame(), добавив при этом значения NA для всех значений, индексы которых отличаются от индексов полных случаев. По сути, я должен создать столбец во фрейме данных, объединив два вектора: один из прогнозов, другой из значений NA (на основе известных индексов). Однако я достаточно глуп, чтобы не написать несколько строк кода для этого.

24.07.2019

  • Возможно, использование ifelse для записи в новый столбец прогнозируемого значения или NA, в зависимости от наличия пропущенных значений в строке, также может быть подходом. Но я все еще не могу написать код. 24.07.2019
  • Без данных трудно обойтись, но: если x ваши данные (потенциально с отсутствующими), то x$pred <- NA; x$pred[complete.cases(x)] <- predict(mdl, newdata=x[complete.cases(x),]). Не обращайте внимания, это именно то, что предложил thelatemail. Так как это не работает и это идиоматический способ сделать это, вам необходимо предоставить воспроизводимый вопрос. Это включает пример кода (включая список небазовых пакетов R), образцы однозначных данных (например, dput(head(x)) или data.frame(x=...,y=...)) и ожидаемый результат. Ссылки: stackoverflow.com/questions/5963269, stackoverflow.com/help/mcve. 24.07.2019
  • Я только что обнаружил, что решение вопроса, упомянутого во введении, работает при условии, что я выбираю только столбец с прогнозом. По крайней мере, в пакете mlr R результатом прогнозирования, примененного к модели svm, является список, и для того, чтобы решение работало, я должен использовать для назначения компонент $data$response этого списка. 24.07.2019
  • Несколько методов predict возвращают list, иногда с $y, иногда что-то еще. Рад слышать, что это все, что было. 24.07.2019

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..