Usar train_test_split correctamente
Stratify, random_state y proporciones.
Usar train_test_split correctamente es una lección gratuita de Data Science Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Data Science Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Data Science Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
One Helper, Two Sets
The function train_test_split takes your features and target and hands back train and test pieces in one tidy call.
from sklearn.model_selection import train_test_splitFour Things Come Back
It returns four objects in a fixed order: train features, test features, train target, test target. Unpack them carefully so each lands in the right name.
X_train, X_test, y_train, y_test = train_test_split(X, y)Set the Test Size
Use test_size to choose how much data to reserve. A value of 0.2 means 20% goes to the test set.
train_test_split(X, y, test_size=0.2)Shuffling by Default
By default the rows are shuffled before splitting. That mixing prevents any hidden order in your file from biasing either set.
Make It Reproducible
Pass random_state to lock the shuffle. The same number gives the same split every run, so your results are repeatable. 🔁
train_test_split(X, y, test_size=0.2, random_state=42)Why Reproducibility Matters
Without a fixed seed, every run reshuffles and your scores wobble. A locked random_state lets teammates reproduce your exact numbers.
The Imbalance Problem
If a class is rare, a plain random split might dump most of it into one set. Now train and test no longer reflect the same class balance.
Stratify to the Rescue
Pass stratify equal to your target so both sets keep the same class proportions. Essential for classification with uneven classes.
train_test_split(X, y, test_size=0.2, stratify=y, random_state=42)Keep X and y Aligned
The split keeps each row's features and label together. Row 7's features always travel with row 7's label, never scrambled apart.
Choosing the Ratio
Common splits are 80/20 or 70/30. With lots of data you can spare a smaller test slice; with little data, give the test set a bit more.
Split Before You Touch
Run the split first, before scaling or filling values. Doing prep on the full set leaks test information back into training.
Quick Check
Your target classes are very imbalanced. Which argument helps?
Recap
Unpack four sets, set test_size, fix random_state for repeatability, and use stratify when classes are uneven. Split first, prep later. 🔁
Preguntas frecuentes
¿La lección «Usar train_test_split correctamente» es gratis?
Sí — el texto completo de «Usar train_test_split correctamente» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Data Science Academy, actualiza a CoddyKit PRO. El curso de Data Science Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Usar train_test_split correctamente»?
Stratify, random_state y proporciones. Practicas Data Science Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Data Science Academy?
No se requiere experiencia previa. Data Science Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Usar train_test_split correctamente»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Data Science Academy?
Sí. Cada lección de Data Science Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Por qué se reserva un conjunto de prueba
- Usar train_test_split correctamente
- Validación cruzada K-Fold
- Evitar la fuga de datos desde el principio