Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Sugerencia] No pude seguir la clase desde mi notebook google colab, directamente. Hay que actualizar ciertos códigos.

El curso está bueno, pero tuve algunos inconvenientes:
Seguí la clase paso a paso en google colab, y en dos clases los comandos entregados impedían ejecutar. Por ejemplo el primer error se debe a que la clase no está muy actualizada:

si no quiero ver advertencias

import warnings

warnings.filterwarnings('ignore')

#en este caso la advertencia era correcta, el código de la clase arrojaba error
#porque ya no acepta el replace en la transformación true y false, solo hay que agregar
#.astype(np.int64)
Otro problema que me hizo perder mucho tiempo fue porque el código dado en clases me arrojaba un error cuando intentaba ejecutarlo: ValueError: Expected a 2-dimensional container but got <class 'pandas.core.series.Series'> instead.
Estuve mucho tiempo trtando de arreglarlo sin ayuda, pero al final encontré la solución con IA:
El modelo espera que X_train sea un DataFrame (2D), pero estás entregando una Series (1D), probablemente porque X_train tiene una sola columna y fue extraída así:
X_train = df['feature']
Lo anterior crea una Serie. Para convertirlo a un DataFrame con una sola columna (2D), debes hacer:
X_train = df[['feature']]
En alguno de los códigos entregados se cometió ese error...Y aunque traté de arreglarlo no llegué a los mismo resultados de los modelos.
Solución parcial:

Ajuste de formatos

if isinstance(X_train, pd.Series):
X_train = X_train.to_frame()

if isinstance(y_train, pd.DataFrame):
y_train = y_train.squeeze()

2 respuestas
solución!

Hola Carlos,

Gracias por compartir tus experiencias y sugerencias. Es genial que estés tan comprometido con el aprendizaje y que hayas encontrado soluciones a los problemas que enfrentaste.

Sobre el primer problema que mencionaste, con el uso de astype(np.int64), es un buen ajuste cuando las advertencias indican que el código necesita una actualización. Las advertencias a veces son útiles para identificar partes del código que pueden no estar alineadas con las versiones más recientes de las bibliotecas.

En cuanto al segundo problema, la diferencia entre una Series y un DataFrame en Pandas puede ser sutil pero importante. Cuando trabajas con una sola columna, es fácil caer en la trampa de crear una Series en lugar de un DataFrame. Tu solución de convertir X_train a un DataFrame con X_train = df[['feature']] es correcta y es una buena práctica para evitar ese tipo de errores.

Tu enfoque de verificar el tipo de datos con isinstance y ajustar en consecuencia es también una estrategia sólida para asegurar que los datos estén en el formato correcto antes de pasar al modelado.

Espero que estos ajustes te ayuden a obtener resultados más consistentes con los modelos. Sigue adelante con tu aprendizaje y experimentación, ya que estos desafíos son parte del proceso.

Espero haber ayudado y buenos estudios!

Gracias por tu respuesta Wilfredo.
Espero que estos detalles se revisen y se actualice el contenido del video del curso, para que se pueda ejecutar el programa en colab sin problemas. También sé que es una forma de estudiar, y no todos la usan, solo algunos seguimos el curso al mismo tiempo que vamos escribiendo los códigos en el notebook, porque la otra forma es avanzar rápido, y después bajar el json en la clase siguiente, en la actividad: proyecto de la clase anterior. Por eso es sólo una sugerencia.
Saludos