Stack Overflow en español Asked by emdikey on December 22, 2021
Tengo una tabla que posee varias columnas: ID, Género, Región, Nivel Educacional, Edad, Comuna, y otras 25 más, y más de 100 mil registros, que a continuación comparto con una imagen de ejemplo (no puedo colocar todas las columnas porque poseen datos sensibles)…
Por lo tanto a la tabla debo hacer un "One Hot Encoder" a gran parte de las variables Objetos y Categóricos y a unas numéricas, pero a la columna ‘ID’ y a otras, como por ejemplo ‘Edad’, no se le debe aplicar el proceso, con el fin de poder crear un único archivo CSV con todas las columnas no transformadas y con las columnas resultantes del "One Hot Encoder" reemplacen a las columnas originales a las cuales se le aplicó.
Sé que se puede hacer con pandas.get_dummies pero no logro que todo quede en un mismo dataframe para luego guardar en un CSV nuevo.
Logro el One Hot Encoder con pandas, pero creando otro dataframe aparte con la instrucción…
cat_org = pd.get_dummies(dataframe[columns], drop_first = True, dummy_na = True)
donde ‘columns’ contiene las columnas que interesa aplicar el One Hot Encoder, pero no posee la columna ‘ID’ y temo que si junto con otra, se mezclen los datos y el resultado sea inservible.
Puede que esté perdido o ahogándome en un baso de agua, pero no logro lo que requiero.
Se agradece muchísimo la ayuda.
Casi lo tienes! Tan solo hay que pasar el DataFrame entero a get_dummies
y las columnas que quiere en one-hot.
import pandas as pd
df = pd.DataFrame({'A': ['x', 'y', 'x'], 'B': ['z', 'u', 'z'],
'C': ['1', '2', '3'],
'D':['j', 'l', 'j']})
pd.get_dummies(df, columns=['A', 'B', 'D'])
Como puedes ver la columna C en este caso podría ser tu ID y está manteniendo los número igual, después de la operación
Answered by Rubiales Alberto on December 22, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP