Каковы плюсы и минусы между get_dummies (pandas) и Onehotencoder (scikit-learn)?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Каковы плюсы и минусы между get_dummies (pandas) и Onehotencoder (scikit-learn)?

Сообщение Anonymous »

Я изучаю разные методы для преобразования категориальных переменных в числовые для классификаторов машинного обучения. Я наткнулся на метод Pd.get_dummies и sklearn.preprocessing.onehotencoder () и я хотел посмотреть, как они отличались с точки зрения производительности и использования.

Я нашел учебник по использованию onehotencoder () на https://xgdgsc.wordpress.com/2015/03/20/note-on- USING-Onehotencoder-in-scikit-tearn-tobk-on-categorical-feature/ Sklearn

import pandas as pd
import numpy as np
from sklearn.datasets import load_iris
sns.set()

%matplotlib inline

#Iris Plot
iris = load_iris()
n_samples, m_features = iris.data.shape

#Load Data
X, y = iris.data, iris.target
D_target_dummy = dict(zip(np.arange(iris.target_names.shape[0]), iris.target_names))

DF_data = pd.DataFrame(X,columns=iris.feature_names)
DF_data["target"] = pd.Series(y).map(D_target_dummy)
#sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) \
#0 5.1 3.5 1.4 0.2
#1 4.9 3.0 1.4 0.2
#2 4.7 3.2 1.3 0.2
#3 4.6 3.1 1.5 0.2
#4 5.0 3.6 1.4 0.2
#5 5.4 3.9 1.7 0.4

DF_dummies = pd.get_dummies(DF_data["target"])
#setosa versicolor virginica
#0 1 0 0
#1 1 0 0
#2 1 0 0
#3 1 0 0
#4 1 0 0
#5 1 0 0

from sklearn.preprocessing import OneHotEncoder, LabelEncoder
def f1(DF_data):
Enc_ohe, Enc_label = OneHotEncoder(), LabelEncoder()
DF_data["Dummies"] = Enc_label.fit_transform(DF_data["target"])
DF_dummies2 = pd.DataFrame(Enc_ohe.fit_transform(DF_data[["Dummies"]]).todense(), columns = Enc_label.classes_)
return(DF_dummies2)

%timeit pd.get_dummies(DF_data["target"])
#1000 loops, best of 3: 777 µs per loop

%timeit f1(DF_data)
#100 loops, best of 3: 2.91 ms per loop


Подробнее здесь: https://stackoverflow.com/questions/366 ... oder-sciki
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Каковы плюсы и минусы шаблона или динамического создания объекта в С++? [закрыто]
    Anonymous » » в форуме C++
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Каковы плюсы и минусы ведущих парсеров Java HTML? [закрыто]
    Anonymous » » в форуме JAVA
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Каковы плюсы и минусы повторного использования AFHTTPRequestOperationManager?
    Anonymous » » в форуме IOS
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Использование Scikit-learn Onehotencoder с пандами DataFrame
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Есть ли какие-либо плюсы и минусы, если я всегда использую класс CSS вместо идентификатора CSS для всего?
    Гость » » в форуме CSS
    0 Ответы
    33 Просмотры
    Последнее сообщение Гость

Вернуться в «Python»