Советы по предварительной обработке данных с использованием Python и Scikit Learn
1 плюс 2 важных этапа предварительной обработки данных с использованием Python, Scikit Learn. Вы можете начать работу над проектом машинного обучения и анализа данных.
Данные — это кровь машинного обучения, но дело не в их количестве. Таким образом, правильная и оптимальная предварительная обработка данных очень важна перед началом разработки моделей машинного обучения. Итак, в этой статье я пройдусь по 1 и 2 важным этапам предварительной обработки данных с использованием Python и Scikit Learn. К концу этой статьи вы сможете начать работу над собственными проектами машинного обучения и анализа данных с практическими советами и рекомендациями.
Оглавление: Советы по предварительной обработке данных с использованием Python и Scikit Learn
- Сформулируйте вопрос
- Важность источника данных: внутренний и внешний парсинг
- Очистка данных перед запуском
- Бесплатный Scraping API и полный Python-скрипт очистки данных
- Рекомендации по курсу «Наука о данных и машинное обучение»
Первое: сформулируйте вопрос
Прежде всего, я бы посоветовал спросить, почему вам нужно использовать машинное обучение. Большинство людей, которых я встречал раньше, могли бы сказать, что им нравится анализировать данные с помощью машинного обучения. Анализ данных — это подход, но не цель. С точки зрения целей, с моей точки зрения, в бизнес-аспекте есть три типа:
- Найдите новые и оптимизируемые элементы, которые могут улучшить бизнес и операционную эффективность.
- Автоматизируйте операционные задачи с помощью операционных решений, принимаемых машинами.
- Создавайте и развивайте собственные нишевые модели искусственного интеллекта.
Второе: важность источника данных – внутренний и внешний парсинг
Теперь вы можете четко договориться со своей командой, какова цель этой модели. Следующим важным шагом станет обнаружение и сбор данных.
При оценке источника данных качество всегда является наиболее важным показателем, позволяющим оценить, можно ли использовать набор данных для построения модели машинного обучения. Это потому, что это введет в заблуждение процесс машинного обучения и направит его в неправильном направлении, что исказит результат обучения.
Из моего опыта работы над проектами определение качества имеет два основных варианта. Это внутренние и очищаемые данные. Только не пытайтесь приобрести набор данных у третьих лиц.
Если у вашей компании недостаточно внутренних данных, парсинг данных — один из лучших способов их сбора. Это потому, что мы можем определить, откуда берутся данные, и собрать именно те данные, которые нам нужны. Мы могли бы использовать поставщиков парсеров, таких как BuyfromLo, или разработать собственное приложение для парсинга.
www.buyfromlo.com/app
Третье: очистка данных с помощью Python
После того, как аспекты набора и источника данных решены, пришло время обсудить, как очистить и структурировать данные. Независимо от того, очищаются ли данные или собственные данные, они могут быть не отформатированы таким образом, чтобы соответствовать моделям машинного обучения, таким как линейная регрессия обучения Scikit. Вот советы по проверке и очистке данных.
Шаг 1. Превратите свой набор данных в DataFrame
Тип DataFrame — это одна из частей тела в машинном обучении. Независимо от того, вводите ли вы данные с помощью CSV или получаете список данных с помощью API, вот строка кода, к вашему сведению.
Read CSV
import pandas as pd
dataset = pd.read_csv ( 'planprice3.csv' )
Data List
List = [1, 2, 3, 4]
Dataset = pd.DataFrame(List)
Для набора данных CSV иногда заголовок может быть не тем, который вы установили, а тот, который вы установили, относится ко второй роли. Таким образом, вот способ решить эту проблему.
dataset = pd.read_csv ( 'planprice3.csv' )
dataset.columns = dataset.iloc [ 0 ]
dataset = dataset [ 1 :]
Шаг 2. Узнайте, какую информацию включает в себя набор данных.
pp_dataset.shape
(84359, 13)
Это говорит о форме вашего набора данных. Форма здесь означает, сколько объектов или так называемых переменных (зависимых плюс независимых переменных) и сколько экземпляров имеет набор данных.
print ( dataset.info ())
Это очень полезный метод, который расскажет вам более подробную информацию о наборе данных.
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 84359 entries, 1 to 84359
Data columns (total 13 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Purchase Date 84359 non-null object
1 Campaign 84359 non-null object
2 Source Desc 84359 non-null object
3 Source Type 84359 non-null object
4 Country 84359 non-null object
5 Company Name 84358 non-null object
6 Amount ($) 84359 non-null object
7 Base Price ($) 84359 non-null object
8 Gender 84359 non-null object
9 Plan Type 84359 non-null object
10 Activity 84359 non-null object
11 Created By Name 84359 non-null object
12 Created by ID 84359 non-null object
dtypes: object(13)
memory usage: 8.4+ MB
Если весь ваш набор данных имеет целочисленный тип данных, вы также можете использовать эту строку, чтобы увидеть общую картину числа.
dataset.describe ()
Шаг 3. Решите проблему отсутствия значений
Как вы можете видеть выше, количество экземпляров может быть разным, а некоторые функции могут иметь меньше экземпляров, чем другие. Это не очень хорошо для тренировок, поэтому вот способ сделать все последовательным.
dataset.dropna ( inplace= True )
Шаг 4. Нумерация всех данных
Машинное обучение не может читать строки, и читаются только целые числа и числа. Фактически, реальный мир включает в себя очень много строк в наборе данных. Итак, нам нужно преобразовать строки в числа. Вот библиотеки scikit и код для этого.
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder ()
label = le.fit_transform ( dataset [ 'Country' ])
dataset [ 'Country1' ] = label
dataset.drop ( "Country" , axis= 1 , inplace= True )
Для случаев, когда вам нужно преобразовать более одного объекта
dataset
[[ 'Campaign' , 'Source Desc' , 'Source Type' , 'Company Name' , 'Gender' , 'Plan Type' , 'Activity' ]] = dataset [[ 'Campaign' , 'Source Desc' , 'Source Type' , 'Company Name' , 'Gender' , 'Plan Type' , 'Activity' ]] .apply ( le.fit_transform )
Шаг 5. Преобразование числа в целочисленный тип данных.
Некоторые значения могут выглядеть как числа, но на самом деле они могут иметь строковый тип данных. В этом случае нам необходимо преобразовать их в целочисленный тип данных. Вот пример кода:
dataset [ 'Amount ($)' ] = dataset [ 'Amount ($)' ] .astype ( int )
Бесплатный Scraping API и полный Python-скрипт очистки данных
Если вас интересуют советы по предварительной обработке данных с использованием Python и Scikit Learn, подпишитесь на нашу рассылку , добавив сообщение «DS + Full скрипты и бесплатный токен API для очистки». . Мы отправим вам сценарий, когда будет опубликована актуальная версия сценария приложения.
Надеюсь, вам понравится читать «Советы по предварительной обработке данных с использованием Python и Scikit Learn». Если да, поддержите нас, выполнив одно из действий, перечисленных ниже, потому что это всегда помогает нашему каналу.
- Поддержите наш канал и сделайте пожертвование через PayPal ( paypal.me/Easy2digital ).
- Подпишитесь на мой канал и включите колокольчик Easy2Digital Youtube-канал .
- Подпишитесь на мою страницу и поставьте ей лайк. Страница Easy2Digital в Facebook.
- Поделитесь статьей в своей социальной сети с хэштегом #easy2digital.
- Вы подписываетесь на нашу еженедельную рассылку, чтобы получать последние статьи, видео и коды скидок Easy2Digital.
- Подпишитесь на наше ежемесячное членство через Patreon, чтобы пользоваться эксклюзивными преимуществами ( www.patreon.com/louisludigital ).