Python обработка данных

Очистка и предварительная обработка данных для начинающих с кодом в Python

Обработка извлечение текстовой информации в Python, а так же очистка и подготовка данных является наиболее важным первым шагом в любом проекте искусственного интеллекта и машинного обучения. Это нормально, что большая часть времени — до 70% — тратится на очистку данных.

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

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

Курс программы на питоне примеры для начинающих будет доступен в конце статьи.

Шаг 1. Загрузить набор данных в Python

Первое, что вам нужно сделать — импортировать библиотеки для предварительной обработки. Существует множество библиотек, но наиболее популярными и важными в целях работы с данными являются NumPy, Matplotlib и Pandas.

NumPy — это библиотека, используемая для математических вещей. Пандас — лучший инструмент импорта и управления наборами данных. Matplotlib — это библиотека создания графики.

Для реализации библиотек вы можете использовать псевдоним, это общий способ сделать сие. Нужно выполнить сей шаг, вам просто надо ввести следующее в свой код:

Matplotlib

С помощью этого простого кода в вашей программе вы сейчас можете использовать библиотеки в вашем проекте.

Загрузка данных в Пандас

В последствии того, как вы загрузили свой набор данных и назвали его файлом.csv, вам нужно будет загрузить его в DataFrame Pandas, чтобы изучить его и выполнить некоторые основные задачи очистки, удалив информацию, которая вам не нужна, что замедлит обработку.

Обычно эти задачи включают в себя:

Удалить первую строку, иногда содержит странный текст вместо заголовков столбцов. Текущий текст предотвращает правильный анализ набора данных библиотекой Пандас. Если нужно удалить эту информацию, вы можете реализовать следующий код:

Загрузка данных в Pandas

Удалить столбцы с текстовыми объяснениями, которые нам не понадобятся, столбцы url и другие ненужные столбцы. Код выполнения выглядит следующим образом:

Удалить столбцы с текстовыми объяснениями

Где находится “url”, вы можете заключить столбец, который хотите удалить.

Удалить все столбцы с одним значением с более чем 50% отсутствующих значений, делаем дабы работать быстрее. Обратите внимание на это, если набор данных достаточно велик, чтобы он оставался значимым. Код, который вы должны реализовать, выглядит следующим образом:

Удалить все столбцы с одним значением в Python

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

Шаг 2. Сканирование набора данных в Python

python самоучитель и сжатие данных

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

Чтобы упростить процесс, вы можете создать DataFrame с именами столбцов, типами данных, значениями первой строки и описанием словаря данных. Когда вы исследуете функции, вы можете обратить внимание на любой столбец, который:

  • плохо отформатировано,
  • требуется больше сведений, много предварительного обрабатывания, так как она должна стать полезной функцией
  • содержит избыточную информацию,

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

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

Решение по целевому столбцу в Python

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

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

Например, если целевой столбец является последним, вы можете создать массив независимых переменных, написав следующий код:

Решение по целевому столбцу

Первые две точки означают, что мы хотим взять любые строки из нашего набора dat, тогда как :-1 означает, что мы хотим взять все столбцы, кроме последнего. Метод .values в конце означает, что мы хотим каждое значения.

Чтобы иметь вектор зависимых переменных только с данными последнего столбца, вы можете написать:

Метод .values

Шаг 3. Подготовка функций машинного обучения

Наконец, пришло время провести подготовительную работу по очистке функций алгоритмов машинного изучения. Дабы очистить набор данных, необходимо обрабатывать недостающие значения и категориальные характеристики, потому что математика, лежащая в основе большинства моделей машинного изучения, предполагает, что они являются числовыми и не содержат недостающих значений.

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

Обработка отсутствующих значений

Отсутствие их является, пожалуй, наиболее распространенной чертой нечистых данных. Значения обычно принимают форму NaN так же None.

Существует несколько причин отсутствия значений, иногда отсутствуют значения, потому что они не существуют, потому, что сбор инфы неадекватен, или потому, что ввод данных плохой.

Например, если кто-то несовершеннолетний, и вопрос относится к людям старше 18 лет, то вопрос будет иметь недостающее значение. В таких случаях было бы ошибкой заполнять значение для этого вопроса.

Существует несколько способов заполнения недостающих значений:

  • Вы можете удалить строки, если набор данных достаточно велик, а процент пропущенных значений высок-более 50%, например.
  • Вы можете заполнить каждые нулевые переменные 0, если числовое значение.
  • Вы можете заполнить пропущенные значения средним или наиболее частым значением в столбце.
  • Вы также можете заполнить недостающие значения любым значением, которое приходит непосредственно сразу в том же столбце.

Решения зависят от типа данных, того, что вы хотите сделать с ними, и причины отсутствия значений. На самом деле, просто потому, что что-то популярно, не обязательно означает, что это правильный выбор. Наиболее распространенной стратегией является использование среднего значения, но в зависимости от таковых, вы можете придумать совершенно другой подход.

Обработка категориальных данных в Python

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

В большинстве случаев категориальные значения дискретны и могут быть закодированы как фиктивные переменные, назначая число каждой категории. Самый простой способ-использовать One Hot Encoder, указав индекс столбца, над которым вы хотите работать. Код будет выглядеть следующим образом:

Обработка категориальных данных в Python

Обработка дат и времени

Определенным типом несоответствия данных является формат дат, dd / mm/YY и mm/dd / YY в одних и тех же столбцах. Ваши значения даты могут быть не в правильном типе, и не позволит вам эффективно выполнять манипуляции и получать из них информацию. На сей раз вы можете использовать пакет datetime для фиксации типа даты.

Масштабирование и стандартизация

Масштабирование важно, если вам нужно указать, что изменение в одной величине не равно другому изменению в другой. С помощью масштабирования вы убедитесь, что, хотя некоторые функции велики, они не будут использоваться в качестве основного предиктора. Например, если в прогнозировании используется возраст и зарплата человека, некоторые алгоритмы будут уделять больше внимания зарплате, потому что она больше, что не имеет никакого смысла.

Нормализация включает в себя преобразование или преобразование набора данных в нормальное распределение. Некоторые алгоритмы, такие как машины поддержки векторов, сходятся намного быстрее в нормализованных данных, поэтому имеет смысл нормализовать их в целях достижения наилучших результатов.

Существует множество способов масштабирования функций. Проще говоря, мы помещаем все наши функции в один и тот же масштаб, важность — ни одна из них не доминировала над другой. Например, вы можете использовать класс StandardScaler из пакета sklearn.preprocessing для настройки и преобразования набора данных:

StandardScaler из пакета sklearn.preprocessing

Вам не нужно использовать fit для тестовых данных, вам просто нужно применить преобразование.

Сохранить в CSV

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

Как и ранее, вы можете сохранить DataFrame как .csv с использованием функции Pandas to_csv (), как показано ниже:

Сохранить в CSV

Это лишь основные шаги, необходимые для работы с большим набором данных, очистки и подготовки данных любых проектов машинного изучения. Существуют и другие способы очистки, которые вы можете найти полезными.

Но с этим я хочу, понимания, что важно правильно организовать и отсортировать перед разработкой любой модели. Лучшие и чистые данные превосходят лучшие алгоритмы. Если вы используете очень простой алгоритм вместе с чистыми, результаты впечатляют.

Помните, что если вам еще трудно всё объяснено здесь, у меня есть в вашем распоряжении шаблон, разработанный на Python, который вы можете использовать в плане очистки и предварительной обработки, и, таким образом, вы можете начать с ваших проектов.

Мы заканчиваем объяснение. Готова основа для очистки и предварительной обработки данных в Python, поэтому я оставляю вам следующий вопрос, какие из следующих утверждений, по вашему мнению, верны?

Вариант 1: Очистка и предварительная обработка выполняется сразу, как модель машинного изучения построена.

Неправильный Ответ. Очистка и предварительная обработка данных — это первый шаг в любом проекте машинного изучения.

Вариант 2: алгоритмы машинного изучения принимают любой тип, от числа до типа объекта.

Неправильный Ответ. Алгоритмы машинного изучения принимают только числовые, целочисленные и плавающие данные.

Вариант 3: в случае потери данных эту информацию можно заполнить средним значением.

Предварительная обработка данных с помощью Python

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

Специализированные методы, ориентированные на анализ данных, представляют собой как статистические методы , так и методы искусственного интеллекта.

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

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

Процесс анализа данных data science состоит из нескольких этапов:

data science

Предварительное обрабатывание представляет собой стандартизацию перед моделью анализа, которая, в свою очередь, состоит из нескольких этапов, как показано на рисунке выше.

Этапы отбора, сканирования, очистки и преобразования составляют предварительную обработку данных, необходимую во многих случаях, прежде чем применять какую-либо модель анализа, будь то прогностическая или описательная.

Выборка и отбор

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

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

Из выборки оцениваются характеристики населения (среднее, общее, соотношение и т. д.) с количественной и контролируемой ошибкой.

Ошибки количественно определяются дисперсией, стандартным отклонением или вычислением средней квадратичной ошибки с намерением получения точности ошибок.

Важно отметить, что для получения степени репрезентативности выборки необходимо использовать вероятностную выборку.

python для начинающих или разведка

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

Таким образом, этап сканирования помогает определить, подходят ли рассматриваемые методы анализа. Поэтому перед использованием любой техники необходимо провести предварительный анализ имеющейся информации.

Необходимо изучить отдельные переменные и взаимосвязи между ними, а также оценить и устранить проблемы при разработке исследований и сборе данных.

Сканирование может указывать на необходимость преобразования данных, если метод нуждается в нормальном распределении или если необходимо использовать непараметрические тесты.

Для исследовательского анализа используются формальные методы и графические и визуальные методы

Чистка

Поскольку в наборе могут быть выбросы, отсутствующие значения и/или ошибочные значения, их очистка важна в плане устранения любого из этих недостатков. Данный этап является следствием исследовательского анализа.

Преобразование

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

Если в исследовательском анализе указывается на необходимость преобразования некоторых переменных, могут быть применены некоторые из четырех преобразований:

  • Логические преобразования
  • Линейные преобразования
  • Алгебраические преобразования
  • Нелинейные преобразования

Эти этапы, упомянутые в предыдущих пунктах, представляют собой процесс предварительного обрабатывания данных, и применения концепций представлен следующий пример:

Пример предварительной обработки

Предположим следующую таблицу данных, которая представляет информацию из магазина, которая связывает информацию о клиентах, которые они купили, и о клиентах, которые не купили:

Нет Страна Возраст Заработная плата Покупка
1 Франция 44 72000 Нет
2 Испания 27 48000 Если
3 Германия 30 54000 Нет
4 Испания 38 61000 Нет
5 Германия 40 Если
6 Франция 35 58000 Если
7 Испания 52000 Нет
8 Франция 48 79000 Если
9 Германия 50 83000 Нет
10 Франция 37 67000 Если

Как мы видим, существуют записи с отсутствующими данными. Клиент регистрации  — строки 5 не имеет заработной платы, а клиент строки 7 не имеет возраста.

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

В этом случае мы должны проверить, влияет ли образец на удаление неполных случаев.

Альтернативой методам удаления данных является вменение недостающей информации, где цель состоит в том, как оценить отсутствующие значения на основе допустимых значений других переменных случаев.

Одним из методов проведения вменения недостающей информации является метод замены случаев. Заключается в замене отсутствующих данных данными наблюдений, не относящихся к выборке, то есть не относящихся к выборке.

Метод замены средним или медианным заменяет отсутствующие значением среднего и ещё медианного значения всех допустимых значений соответствующей переменной. При наличии экстремальных, нетипичных значений отсутствующие данные заменяются медианой, в противном случае используется среднее значение.

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

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

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

В нашем примере мы будем использовать среднее значение в качестве значения для вменения недостающих данных как по возрасту, так и по заработной плате. В связи с этим среднее значение возрастных значений составляет: 38.77, заработная плата, среднее значение, присутствующих в выборке, равно: 63,777. 77, поэтому таблица теперь выглядит следующим образом:

Нет Страна Возраст Заработная плата Покупка
1 Франция 44 72000 Нет
2 Испания 27 48000 Если
3 Германия 30 54000 Нет
4 Испания 38 61000 Нет
5 Германия 40 63777.77 Если
6 Франция 35 58000 Если
7 Испания 38.77 52000 Нет
8 Франция 48 79000 Если
9 Германия 50 83000 Нет
10 Франция 37 67000 Если

У нас есть полная выборка, и теперь мы продолжаем категориальные переменные (страна и покупка).

К переменной Buy, которая имеет категориальные значения да или нет, мы можем закодировать ее как 1 и 0, представляя 1 Для значения if и 0 для значения нет. Случая переменной страны случай немного отличается, учитывая, что если мы закодируем как 0, 1 и 2, Страна со значением 2 будет иметь больший вес, чем страна со значением 0, поэтому стратегия в этих типах переменных отличается.

В логических преобразованиях интервальные переменные могут быть преобразованы в порядковые, такие как переменные размера, в номинальные, такие как цвет, и создавать фиктивные или манекенные переменные.

Страна Франция Испания Германия
Франция 1 0 0
Испания 0 1 0
Германия 0 0 1

Переменную страна мы меняем на три переменные (манекен), которые являются значениями переменной страны. Вместо того, чтобы использовать переменную страна, мы теперь используем 3 новые переменные, и таблица будет выглядеть следующим образом:

Нет Франция Испания Германия Возраст Заработная плата Покупка
1 1 0 0 44 72000 0
2 0 1 0 27 48000 1
3 0 0 1 30 54000 0
4 0 1 0 38 61000 0
5 0 0 1 40 63777.77 1
6 1 0 0 35 58000 1
7 0 1 0 38.77 52000 0
8 1 0 0 48 79000 1
9 0 0 1 50 83000 0
10 1 0 0 37 67000 1

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

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

python language
Величина заработной платы

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

Вслед применения нормализации результирующая таблица выглядит следующим образом:

Франция Германия Испания Age Salary Purchased
1 0 0 0.72003861 0.71101283 0
0 0 1 -1.62356783 -1.36437577 1
0 1 0 -1.20999022 -0.84552862 0
0 0 1 -0.1071166 -0.24020695 0
0 1 0 0.1686018 -6.0532 е-07 1
1 0 0 -0.52069421 -0.49963052 1
0 0 1 -0.00096501 -1.01847767 0
1 0 0 1.27147542 1.3163345 1
0 1 0 1.54719383 1.6622326 0
1 0 0 -0.2449758 0.2786402 1

Когда категориальные переменные генерируют много пустышек переменных мы можем использовать методы уменьшения измерения, нужно сделать наш набор более управляемым.

Предварительная обработка с помощью Python

Использование python для предварительного обрабатывания приведенного выше примера становится простым с библиотеками numpy и sklearn, поскольку подпакет preprocessing содержит классы, необходимые в попытке выполнения вменения отсутствующих данных, кодирования категориальных переменных, создания переменных dummy и масштабирования.

Первым шагом является импорт библиотек, которые мы будем использовать в улучшении, затем мы загружаем набор данных и сохраняем его в переменной dataset, разделяем массив на х (независимые переменные) и у (зависимая переменная)

# Предварительная обработка данных
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Мы загружаем набор данных
dataset = pd.read_csv('Preproc_Datos_Compras.csv')

Загруженный dataset выглядит следующим образом, и, как мы можем заметить, отсутствующие данные отображаются как nan (not number):

Загруженный dataset

Теперь мы разделяем переменные на зависимые и независимые.

# Предварительная обработка данных
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Мы загружаем набор данных
dataset = pd.read_csv('Preproc_Datos_Compras.csv')

# Мы разделяем зависимые и независимые переменные
x = dataset.iloc [:,: -1]
у = dataset.iloc [:, 3]

При запуске этого последнего фрагмента кода у нас есть переменные х и у.

разделяем зависимые и независимые переменные

Мы видим, что в массиве x отсутствующие данные отображаются как nan (Not an Object). Следующим шагом теперь является вменение отсутствующих и для этого мы можем использовать класс Imputer подпакета preprocessing.

# Предварительная обработка данных
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Мы загружаем набор данных
dataset = pd.read_csv('Preproc_Datos_Compras.csv')

# Мы разделяем зависимые и независимые переменные
x = dataset.iloc [:,: -1]
у = dataset.iloc [:, 3]

#Вменение недостающих данных 
from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values='NaN', strategy='mean', axis=0)
imputer = imputer.fit(x.values[:, 1:3])
x.iloc[:, 1:3] = imputer.transform (x. values[:, 1: 3])

Вслед выполнения фрагмента кода класса Imputer мы заметили, что недостающие данные были вычислены со средним значением, которое является стратегией, указанной ему в аргументах конструктора класса Imputer.

выполнения фрагмента кода

Среднее значение возраста составляло 38 7778, а среднее значение заработной платы-63 777 77778. Следующим шагом является кодирование категориальных переменных. Сначала мы сделаем для У, со значениями если и нет, а затем для Х со значениями стран.

# Предварительная обработка данных
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Мы загружаем набор данных
dataset = pd.read_csv('Preproc_Datos_Compras.csv')

# Мы разделяем зависимые и независимые переменные
x = dataset.iloc [:,: -1]
у = dataset.iloc [:, 3]

#Вменение недостающих данных 
from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values='NaN', strategy='mean', axis=0)
imputer = imputer.fit(x.values[:, 1:3])
x.iloc[:, 1:3] = imputer.transform (x. values[:, 1: 3])

# Codificacion de variables categoricas
from sklearn.preprocessing import LabelEncoder
label_encoder_y = LabelEncoder()
y = label_encoder_y.fit_transform(y)

label_encoder_x = LabelEncoder()
x.iloc[:, 0] = label_encoder_x.fit_transform(x.values[:, 0])

from sklearn.preprocessing import OneHotEncoder
onehotencoder = OneHotEncoder(categorical_features = [0])
x = onehotencoder.fit_transform(x).toarray()

Класс LabelEncoder кодирует значения У в 0 Для нет и 1 для Си, для стран кодирует их в 0 Франция, 1 Испания и 2 Германия, затем класс OneHotEncoder выполняет преобразование переменных манекена следующим образом:

программирование python

Наконец, требуется только преобразование шкал в переменных возраста и заработной платы.

# Предварительная обработка данных
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Мы загружаем набор данных
dataset = pd.read_csv('Preproc_Datos_Compras.csv')

# Мы разделяем зависимые и независимые переменные
x = dataset.iloc [:,: -1]
у = dataset.iloc [:, 3]

#Вменение недостающих данных 
from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values='NaN', strategy='mean', axis=0)
imputer = imputer.fit(x.values[:, 1:3])
x.iloc[:, 1:3] = imputer.transform (x. values[:, 1: 3])

# Codificacion de variables categoricas
from sklearn.preprocessing import LabelEncoder
label_encoder_y = LabelEncoder()
y = label_encoder_y.fit_transform(y)

label_encoder_x = LabelEncoder()
x.iloc[:, 0] = label_encoder_x.fit_transform(x.values[:, 0])

from sklearn.preprocessing import OneHotEncoder
onehotencoder = OneHotEncoder(categorical_features = [0])
x = onehotencoder.fit_transform(x).toarray()

# Преобразование масштаба
from sklearn.preprocessing import StandardScaler
sc_x = StandardScaler()
sc_y = StandardScaler()
x = sc_x.fit_transform(x)
y = sc_y.fit_transform(y.reshape(-1, 1))

Мы применяем масштабное преобразование как к переменным множества Х, так и зависимой переменной У и видим, что теперь Си равно 1, а не -1, чтобы стандартизировать каждые значения всех переменных.

python обучение

Скачать курс Обработка и предсказание данных в Python

Продажник курса ниже по ссылке:

https://www.udemy.com/course/ittensive-python-pandas/

Теперь, с предварительно обработанными данными в Python, мы можем применить какой-то прогностический метод, такой как логистическая регрессия, чтобы предсказать покупки какого-то нового клиента, то есть с его данными по стране, возрасту и зарплате, оценить, будет ли он покупать или нет.

5 1 голос
Рейтинг статьи

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x