No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende Ingl茅s, Programaci贸n, AI, Ciberseguridad y m谩s a precio especial.

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

1 D铆as
23 Hrs
30 Min
24 Seg

Procesamiento para variables categ贸ricas con Python

18/25
Recursos

Aportes 21

Preguntas 14

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

La decodificaci贸n de variables categ贸ricas a num茅ricas implica que cada elemento del nuevo vector se interpreta como una nueva variable. Por tanto, aumenta la dimensi贸n del dataset y el tiempo de procesamiento.

Me pregunto si se podria utlizar una codificacion tipo Word Embeddings para variables categoricas.

Procesamiento para variables categ贸ricas con Python

驴Podemos tratar a las variables num茅ricas como categ贸ricas? Claro que s铆. Todo depende del contexto y del proyecto.

En el mundo de ciencia de datos, es muy com煤n usar el modo 鈥榦ne-hot鈥, puesto que 鈥榙ummy鈥 ni siquiera existe en las librer铆as de Python.

La desventaja del one-hot es que cada elemento de los vectores que resultan es como si fueran nuevas variables. Esto aumenta demasiado
la dimensionalidad de nuestro dataset y se vea afectado en el rendimiento.

catergoria Dummy One-hot
ingles [0,0] [1,0,0]
espa帽ol [0,1] [0,1,0]
frances [1,0] [0,0,1]

Aqu铆 pueden aprender un poquito mas de one hot

Quisiera compartirles un video donde explica de manera detallada como realizar el mapeo one hot a trav茅s de pandas. As铆 mismo se evidencia como se pueden unir las bases de datos generadas y eliminar las columnas que se repiten.
https://www.youtube.com/watch?v=DAQhQFp-sCg&list=WL&index=4&t=318s

Si uno cuenta con una variable categ贸rica con muchos datos distintos (por ejemplo pa铆ses del mundo) una alternativa en vez de convertirlas a one-hot es asignarles un valor descriptivo del problema en el que uno est茅 trabajando, como por ejemplo el PIB de esos pa铆ses.

Informaci贸n resumida de esta clase
#EstudiantesDePlatzi

  • Lo que buscamos es convertir estas variables categ贸ricas en variables num茅ricas para poder trabajar nuestros modelos

  • Tambi茅n podemos tratar variables num茅ricas como categ贸ricas

  • Con le encoding one hot la longitud del vector es igual a la cantidad de categor铆as que tengan mis datos, esto me ayuda para cuando tengo valores nulos

  • En Python hago esto con la funci贸n get_dummies de la librer铆a panda

  • Puedo realizar la misma operaci贸n usando la librer铆a sklearn.preprocessing

  • Cuando hago este mismo ejercicio ahora con variables num茅ricas se incrementan bastante los datos y se debe hacer una reducci贸n de los mismos

Esta super interesante.

Procesamiento para variables categ贸ricas con Python

  • La codificaci贸n categ贸rica es una t茅cnica para codificar datos categ贸ricos. Tenga en cuenta que los datos categ贸ricos son los conjuntos de variables que contienen variables de etiqueta en lugar de valores num茅ricos. Muchos algoritmos de aprendizaje autom谩tico son incapaces de procesar variables categ贸ricas. Por lo tanto, es importante codificar los datos en una forma adecuada para poder preprocesar estas variables. Como necesita ajustar y evaluar su modelo, debe codificar los datos categ贸ricos y convertir todas las variables de entrada y salida en num茅ricas. De este modo, el modelo podr谩 comprender y extraer la informaci贸n generando la salida deseada. Los datos categ贸ricos var铆an en funci贸n del n煤mero de valores posibles.

Codificaci贸n de n煤meros enteros

  • En este primer paso, asignar谩 el valor entero para cada valor de categor铆a. Por ejemplo, el azul es 1, el verde es 2 y el amarillo es 3. Puede invertir f谩cilmente este tipo de codificaci贸n. Tambi茅n puede referirse a la codificaci贸n de enteros como codificaci贸n de etiquetas. Para muchas variables, este paso es suficiente para procesar el modelo. Existe una relaci贸n natural ordenada entre los diferentes valores enteros. Se puede conectar la relaci贸n a trav茅s de un algoritmo de aprendizaje autom谩tico. Por ejemplo, si considera las variables ordinales como el lugar, las categor铆as ya est谩n ordenadas. Por lo tanto, no es necesario encontrar la relaci贸n entre las variables. As铆, la codificaci贸n de etiquetas ser铆a suficiente.

Para las variables categ贸ricas ordinales tambi茅n se puede usar la funci贸n OrdinalEncoder de sklearn, aunque la codificaci贸n one hot, la mayor铆a de veces, tambi茅n es valida en este tipo de variables

Es interesante como se puede convertir valores categoricos a numericos con el proposito de entender la funcionalidad de estos y que no tengan algun problema al momento de trabajarlo.

"Es un One-hot, punto" jajajajaja me hizo el d铆a!
para utilizar get dummies en pandas 2.1.1, la version mas actualizada se debe hacer: donde pd es la librerias pandas y devuelve un una matriz con tres columnas dependediendo del numero de categorias como lo es engine\_type que son 3 pd.get\_dummies(data=data\['engine\_type'])

En este video de DotCSV encuentro muy 煤til la forma gr谩fica de entender la usabilidad del one-hot, aplicado al NLP. Este tipo de visualizaciones cobran m谩s sentido cuando igual est谩s familiarizado con el 谩lgebra lineal 馃

Es posible ver otra forma de hacer codificaci贸n. Esta se llama Label_encoder. La documentaci贸n queda adjunta

Buena clase.

encoder.transform([[2016],[2009],[190]]).toarray()

Francisco felicitaciones, tiempos, conceptos, ejemplos y practica consistente.