Я знаю кого-то, кто работает над проектом, который включает в себя прием файлов данных без учета столбцов или типов данных. Задача состоит в том, чтобы взять файл с любым количеством столбцов и различных типов данных и вывести сводную статистику по числовым данным.
Однако он не уверен в том, как динамически назначать типы данных для определенных числовых данных. Например:
CITY
Albuquerque
Boston
Chicago
Это, очевидно, не числовые данные и будут сохранены в виде текста. Однако,
ZIP
80221
60653
25525
не четко обозначены как категориальные. Его программное обеспечение будет назначать почтовый индекс в качестве числовой и выводить сводную статистику для него, что не имеет смысла для такого рода данных.
У нас была пара идей:
- Если столбец состоит из целых чисел, пометьте его как категориальный. Это явно не сработает, но это была идея.
- Если столбец имеет менее n уникальных значений и является числовым, пометьте его категориальным. Это может быть ближе, но могут все еще быть проблемы с проваливанием числовых данных.
- Вести список распространенных числовых данных, которые на самом деле должны быть категориальными, и сравнить заголовки столбцов с этим списком на совпадения. Например, все, что содержит «ZIP», будет категоричным.
Моя интуиция говорит мне, что нет никакого способа точно назначить числовые данные категориальным или числовым, но надеялся на предложение. Любое понимание, которое вы имеете, очень ценится.
источник
Ответы:
Я не знаю надежного способа сделать это. Вот одна идея из головы:
источник
Если у вас есть, например, число детей в семье (которая может составлять, например, от 0 до 5), это категорическое или числовая переменная? На самом деле это зависит от вашей проблемы и от того, как вы собираетесь ее решить. В этом смысле, вы можете сделать следующее:
В случае дискретных значений, один дополнительный тест может быть: использовать регрессионную модель для оценки некоторых параметров и проверок, если расчетные значения содержатся в исходном наборе значений. Если это не так, вы, вероятно, имеет дело с категорическими данными (как это имеет место в ZIP).
Он работал достаточно хорошо для меня в прошлом ...
источник
Поскольку этот вопрос был опубликован перекрестно, первоначальные комментарии @nickcox о перекрестной проверке очень актуальны и верны. Мои взгляды немного отличаются. Например, я бы перефразировал вопрос, разложив его на две части: во-первых, существует вопрос о том, как можно классифицировать поток неизвестной информации по типу данных, и, во-вторых, какую степень ошибочной классификации можно ожидать. Оба вопроса немедленно отвечают, если кто-то хочет найти время, чтобы сделать это.
Первая проблема состоит в разработке основанной на правилах экспертной системы в соответствии с тем, что было предварительно предложено в комментариях и ответах на эти темы, с использованием образцов реальных данных, которые легко доступны.
Во-вторых, учитывая, что эти реальные данные содержат известные типы данных, сравнивая ошибки классификации.
Третий шаг будет включать в себя итеративное обновление правил для более точного отражения передаваемой информации - насколько это возможно.
На мой взгляд, хотя этот проект и утомителен, он не будет включать чрезмерно много работы.
---- Дополнительный комментарий ----
Хорошее обсуждение выделения признаков, как он относится к процессу формирования данных выскочили на резюме здесь:
/stats/191935/what-does-the-process-that-generates-the-data-mean-and-how-does-feature-selec
Извлечение, отбор функций и DGP являются отличной отправной точкой для разработки экспертной системы.
источник