im building one hot encoding function from and pandas dataframe and cant figure out how to get the data back into the dataframe. I get :
"IndexError: only integers, slices (
:
), ellipsis (...
), numpy.newaxis (None
) and integer or boolean arrays are valid indices
How do I reintegrate this back into pandas data frame?
def one_hot_encoder (features, df_to_encode):
"""encoder to encoder
Parameters:
features (list): features to normalise
df_to_encode (pandas dataframe): dataframe to encode
Returns:
dataframe: dataframe to encode
"""
from sklearn.preprocessing import OneHotEncoder
for column in features:
# one hot encoder
enc = OneHotEncoder(sparse=False)
column_norm = column + "_encoded"
df = enc.fit_transform(df_to_encode[[column]])
return df
columns_to_one_hot_encode = ["type"]
df = one_hot_encoder(columns_to_one_hot_encode,df)
The data im using is from https://www.kaggle.com/ealaxi/paysim1