Преобразуйте категориальные переменные в числовые, используя scelit-learn's LabelEncoder - PullRequest
1 голос
/ 19 октября 2019

Я пытаюсь преобразовать категориальные переменные в числовые переменные, используя LabelEncoder scikit-learn:

from sklearn.preprocessing import LabelEncoder
var_mod = ['Gender', 'Married', 'Dependents', 'Education', 'Self_Employed', 'Property_Area', 'Loan_Status']
le = LabelEncoder()
for i in var_mod:
    data_train[i] = le.fit_transform(data_train[i])
data_train.dtypes

Я запускаю это в Jupyter, используя Python 3.6.4. Это дает мне следующую ошибку Python:

TypeError: '<' не поддерживается между экземплярами 'str' и 'int' </p>

Я пробовал использовать разные методы и перестановки (fit против fit_transform) но я все еще получаю ту же ошибку Python.

Это dtypes моего фрейма данных:

Loan_ID               object
Gender                 int64
Married                int64
Dependents            object
Education             object
Self_Employed         object
ApplicantIncome        int64
CoapplicantIncome    float64
LoanAmount           float64
Loan_Amount_Term     float64
Credit_History       float64
Property_Area         object
Loan_Status           object
LoanAmount_log       float64
TotalIncome          float64
TotalIncome_log      float64
dtype: object

...