Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
Args:
X (pandas.DataFrame): categorical columns to encode
Returns:
(pandas.DataFrame): label encoded columns
"""
self.label_encoders = [None] * X.shape[1]
self.label_maxes = [None] * X.shape[1]
for i, col in enumerate(X.columns):
self.label_encoders[i], self.label_maxes[i] = \
self._get_label_encoder_and_max(X[col])
X.loc[:, col] = (X[col].fillna(NAN_INT)
.map(self.label_encoders[i])
.fillna(0))
return X
Args:
X (pandas.DataFrame): categorical columns to encode
Returns:
(pandas.DataFrame): encoded columns
"""
for i, col in enumerate(X.columns):
if self.cv is None:
X.loc[:, col] = (X[col].fillna(NAN_INT)
.map(self.target_encoders[i])
.fillna(self.target_mean))
else:
for i_enc, target_encoder in enumerate(self.target_encoders[i], 1):
if i_enc == 1:
x = X[col].fillna(NAN_INT).map(target_encoder).fillna(self.target_mean)
else:
x += X[col].fillna(NAN_INT).map(target_encoder).fillna(self.target_mean)
X.loc[:, col] = x / i_enc
return X.astype(float)