Jupyther Notebook (интерактивный формат взаимодействия Python) с дескриптивными статистиками, комментариями и описанием исходных данных. Мы не будем подробно останавливаться на его структуре. Это хороший инструмент, который может в ряде случае заменить вам текстовое описание или существенного его расширить.
Когда мы говорили о категориальных переменных, то обсуждали, что мы можем перекодировать переменные и заменить текстовые значения на числовые. Так можно сделать большие наборы данных меньше по размеру. Однако в таком случае, мы должны хранить исходные значения и новые, которые им соответствуют. Обычно их называют словарями.
Пример словаря:
Исходное значение | Новое значение |
---|---|
Женский | 0 |
Мужской | 1 |
Словари могут быть отдельными файлами, а могут быть частью кодбука. Обычно если мы сохраняем для категориальных переменных число уникальных значений в кодбуке, то их можно объединить со словарём.
В процессе работы с данными у нас могут появиться их версии. Это происходит из-за того, что мы находим ошибки, создаем новые переменные, поэтому меняется структура данных и типы переменных. Обычно это означает, что у нас появляется несколько отличающихся между собой копий.
Бывают ситуации, когда этого не происходит. Например, в случае очень маленьких наборов данных, которые можно быстро собрать и проверить все значения на правильность визуально. Но на практике всё происходит иначе.
При сборе происходят ошибки, и в результате мы получаем данные в которых есть неточности. Даже готовые данные, опубликованные на Kaggle, или собранные исследовательскими организациями тоже могут быть небрежными. В них может быть много ошибок и пропусков потому что кодируют и фиксируют их люди, которые по природе ошибаются. Для того, чтобы придать массиву приемлемый вид обычно требуется несколько циклов очистки значений от лишних элементов (например, унификация написания адресов в нижнем регистре), проверки данных на корректность и добавления элементов. Этот процесс называется предобработкой.
🔍Предобработка данных – процесс чистки, отбора, исправления данных и приведение их к пригодному для использования виду.
Она необходима всегда, когда мы не можем проверить каждое отдельное значение и убедиться в отсутствии ошибок в их записи.
Мы можем поделить данные на два вида: грязные и чистые. Чистые данные – пригодны для использования в исследованиях: они проверены на наличие ошибок. Исследователю нет нужды выполнять дополнительные действия с ними, он сразу может начать с исследования самих данных и выдвижения гипотез.
🔍Чистые данные — это предобработанные данные, которые полностью готовы для работы. Их не требуется дополнительно очищать, отбирать и преобразовывать.
Противоположный тип, который обычно называют грязными данными. Ими являются непредобработанные данные. Их опасность и недостаток кроется в их ненадежности. Результаты, выведенные на основе таких массивов являются некорректными и разрушительными для выводов.
🔍Грязные данные — это набор информации, который непригоден для корректного анализа из-за неточностей, ошибок в данных. Такие данные следует обрабатывать и вычищать.
К ошибкам, приводящим к неточностям относятся и пропуски. Представим, что мы написали код, чтобы извлечь информацию с сайта. Если каких-то данных не хватает, то в нашем датафрейме появятся пустые ячейки. Это может быть связано как с какими-то особенностями сайта или и с банальным отсутствием данных. При моделировании — это наносит существенный ущерб, так как мы попросту теряем часть информации. В такой ситуации у нас есть несколько очевидных выходов:
Обычно нужно хранить исходные данные, предобработанные данные без целевых переменных, их же, но с производными переменными. Последняя копия — данные с заполненными пропущенными значениями (т.е импутированные). В общей сложности у вас получится четыре копии данных. Работать вы будете только с последней, но если в коде для обработки данных найдётся ошибка, то её будет легче исправить.
🔍 Лицензия — это правовой документ, определяющий правила использования и распространения программного обеспечения или данных, защищённых авторским правом.
Она должна сопровождать кодбук, так как без неё потенциальный пользователь или читатель данных не может определить, что он может (и не может) с ними сделать.
Лицензии варьируются в диапазоне от «коммерческая тайна» до «публичная собственность». Они различаются между собой пропорцией распределения прав между создателем и пользователем. В первом случае пользователю не передаётся никаких прав на данные, во втором — у создателя не остается никаких прав.
Промежуточные лицензии можно разбить на две большие группы: свободные и несвободные лицензии. Общий принцип следующий: свободные лицензии позволяют вам использовать данные бесплатно с некоторыми ограничениями (не все из них могут быть):
Несвободные лицензии требуют от вас согласовывать использование данных и/или платить за использование данных. Все остальные ограничения могут быть наложены аналогично открытым лицензиям.
Понимание типа лицензии необходимо при работе со вторичными данными, так как без него вы не можете быть уверенными в том, что ваша работа не нарушает чьи-либо права.
В итоге ваши данные должны быть дополнены описанием, кодбуком, словарями к перекодированным переменным. Нужно определиться с лицензией, если вы планируете передавать их кому-то (даже если это ваш коллега!) и с форматом хранения. Для этого можно использовать таблицы и jupyther notebook. В следующей главе мы обсудим, как собрать вторичные данные, чтобы было для чего делать кодбуки.