Мало знаний, большой вызов! Эта статья участвует в "Необходимые знания для программистов«Творческая деятельность
Подробное объяснение параметров SimpleImputer
class sklearn.impute.SimpleImputer(*, missing_values=nan, strategy='mean', fill_value=None, verbose=0, copy=True, add_indicator=False)
Значение параметра
-
missing_values:
int,float,str, (дефолт)np.nanилиNone, то есть каковы пропущенные значения. -
strategy: Стратегия заполнения нулевого значения, всего четыре варианта (по умолчанию)
mean,median,most_frequent,constant.meanУказывает, что пропущенные значения для этого столбца заполняются средним значением этого столбца.medianэто медиана,most_frequentдля большинства.constantУказывает, что пустое значение заполнено пользовательским значением, но это пользовательское значение должно быть передано черезfill_valueопределять. -
fill_value:
strили数值, По умолчаниюZone. когдаstrategy == "constant"час,fill_valueиспользуется для замены всех вхождений отсутствующих значений (missing_values).fill_valueзаZone, при работе с числовыми данными пропущены значения (missing_values) будет заменен на0, для строковых или объектных типов данных замените на"missing_value"эта строка. -
verbose:
int,(дефолт)0,контрольimputerмногословие. -
copy:
boolean,(дефолт)True, указывая на то, что копия данных обрабатывается,FalseИзмените данные на месте. -
add_indicator:
boolean,(дефолт)False,Trueбудут добавлены после данныхnстолбец по0и1состоит из данных одинакового размера,0представляет неотсутствующее значение в местоположении,1Указывает, что местоположение является пропущенным значением.
Общий метод
fit(X)
Возвращаемое значениеSimpleImputer()класс, черезfit(X)метод расчета величины значений корреляции матрицы X для использования при заполнении других матриц отсутствующих данных.
transform(X)
Заполните пропущенные значения, обычно используйте этот метод перед использованиемfit()способ обработки матрицы.
from sklearn.impute import SimpleImputer
import numpy as np
X = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
X1 = np.array([[1, 2, np.nan],
[4, np.nan, 6],
[np.nan, 8, 9]])
imp = SimpleImputer(missing_values=np.nan, strategy='mean')
imp.fit(X)
print(imp.transform(X1))
# 运行结果
[[1. 2. 6.]
[4. 5. 6.]
[4. 8. 9.]]
так какfit(X)иstrategy='mean', поэтому значение заполнения является средним значением каждого столбца матрицы X.
fit_transform(X)
эквивалентноfit() + transform(), обычно используется больше.
X1 = np.array([[1, 2, np.nan],
[4, np.nan, 6],
[np.nan, 8, 9]])
imp = SimpleImputer(missing_values=np.nan, strategy='mean')
print(imp.fit_transform(X1))
# 运行结果
[[1. 2. 7.5]
[4. 5. 6. ]
[2.5 8. 9. ]]
get_params()
ПолучатьSimpleImputerИнформация о параметрах.
imp = SimpleImputer(missing_values=np.nan, strategy='mean')
print(imp.get_params())
# 运行结果
{'add_indicator': False, 'copy': True, 'fill_value': None,
'missing_values': nan, 'strategy': 'mean', 'verbose': 0}
inverse_transform(X)
Преобразуйте данные обратно в исходное представление. Отменить операцию преобразования, выполненную над массивом. Эта операция может быть выполнена только сadd_indicator=Trueсоздавать экземплярsimpleImputerпосле казниУведомление: Обратное преобразование может быть обратным преобразованием только в функциях с бинарными индикаторами пропущенных значений. Если признак не содержит пропущенных значений, то у признака нет двоичного индикатора, и назначения во время преобразования не меняются местами. Проще говоря, нет восстановления без замены пропущенных значений.
X1 = np.array([[1, 2, np.nan],
[4, np.nan, 6],
[np.nan, 8, 9]])
imp = SimpleImputer(missing_values=np.nan, strategy='mean', add_indicator=True)
X1 = imp.fit_transform(X1)
print(X1)
print(imp.inverse_transform(X1))
# 运行结果
[[1. 2. 7.5 0. 0. 1. ]
[4. 5. 6. 0. 1. 0. ]
[2.5 8. 9. 1. 0. 0. ]]
[[ 1. 2. nan]
[ 4. nan 6.]
[nan 8. 9.]]
заполнение пользовательского значения
fill_valueнастроить.
X = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
imp = SimpleImputer(missing_values=1, strategy='constant', fill_value=666)
print(imp.fit_transform(X))
# 运行结果
[[666 2 3]
[4 5 6]
[7 8 9]]
fill_valueзначение по умолчаниюZone.
X = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
imp = SimpleImputer(missing_values=1, strategy='constant', fill_value=None)
print(imp.fit_transform(X))
# 运行结果
[[0 2 3]
[4 5 6]
[7 8 9]]
Для начала
PythonИли хотите начатьPythonдрузей, вы можете искать на WeChat [Python新视野], чтобы общаться и учиться вместе, все исходят от новичков, иногда простой вопрос застревает на долгое время, но, возможно, кто-то еще вдруг поймет это с небольшой помощью.Я искренне надеюсь, что все вместе смогут добиться прогресса.