Я очень плохо знаком с библиотекой scikit в Python, и моя версия scikit-learn - 0.21.2
. Я использовал OneHotEncoder
для кодирования категориальных переменных в моем наборе данных.
Теперь я пытаюсь связать закодированные столбцы с исходными переменными согласно следующим 2 ссылкам, используя приведенные здесь коды и здесь
import pandas as pd
import numpy as np
results = []
for i in range(enc.active_features_.shape[0]):
f = enc.active_features_[i]
index_range = np.extract(enc.feature_indices_ <= f, enc.feature_indices_)
s = len(index_range) - 1
f_index = index_range[-1]
f_label_decoded = f - f_index
results.append({
'label_decoded_value': f_label_decoded,
'coefficient': clf.coef_[0][i]
})
R = pd.DataFrame.from_records(results)
from sklearn import preprocessing
encoder = preprocessing.OneHotEncoder(categorical_features=[0,1,2])
X_train = encoder.fit_transform(data_train)
print encoder.feature_indices_
К сожалению, он продолжает выдавать эти ошибки
'OneHotEncoder' object has no attribute '_active_features_'
'OneHotEncoder' object has no attribute '_feature_indices_'
Как я могу решить эти ошибки и заставить коды работать.