Menu iconMenu icon
Aprendizaje Automático con Python

Capítulo 3: Preprocesamiento de Datos

3.6 Ejercicios Prácticos

Los ejercicios prácticos son una excelente manera de reforzar los conceptos que hemos aprendido en este capítulo. Vamos a sumergirnos en algunos ejercicios que te ayudarán a obtener experiencia práctica en el preprocesamiento de datos.

Ejercicio 1: Limpieza de Datos

Dado el siguiente DataFrame, realiza la limpieza de datos llenando los valores faltantes con la media de la columna respectiva:

import pandas as pd
import numpy as np

# Create a DataFrame with missing values
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [np.nan, 2, 3, 4, 5],
    'C': [1, 2, 3, np.nan, np.nan]
})

# Drop rows with missing values
df_dropped_rows = df.dropna()

# Drop columns with missing values
df_dropped_columns = df.dropna(axis=1)

# Fill missing values with a specific value (e.g., 0)
df_filled = df.fillna(0)

# Fill missing values with the mean of the column
df_filled_mean = df.fillna(df.mean())

# Impute missing values using forward fill
df_ffill = df.fillna(method='ffill')

# Impute missing values using backward fill
df_bfill = df.fillna(method='bfill')

print("DataFrame with dropped rows:")
print(df_dropped_rows)
print("\nDataFrame with dropped columns:")
print(df_dropped_columns)
print("\nDataFrame with missing values filled with 0:")
print(df_filled)
print("\nDataFrame with missing values filled with column means:")
print(df_filled_mean)
print("\nDataFrame with missing values filled using forward fill:")
print(df_ffill)
print("\nDataFrame with missing values filled using backward fill:")
print(df_bfill)

Ejercicio 2: Ingeniería de Características

Dado el siguiente DataFrame, crea una nueva característica 'D' que sea el producto de 'A', 'B' y 'C':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [2, 3, 4, 5, 6],
    'C': [3, 4, 5, 6, 7]
})

# Display the DataFrame
print(df)

Ejercicio 3: Manejo de Datos Categóricos

Dado el siguiente DataFrame, realiza una codificación one-hot en la característica 'color':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'color': ['red', 'blue', 'green', 'red', 'blue']
})

# Display the DataFrame
print(df)

Ejercicio 4: Escalado y Normalización de Datos

Dado el siguiente DataFrame, realiza una estandarización en todas las características:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [10, 20, 30, 40, 50],
    'C': [100, 200, 300, 400, 500]
})

# Display the DataFrame
print(df)

Ejercicio 5: División de Entrenamiento y Prueba

Dado el siguiente DataFrame y la variable objetivo, realiza una división de entrenamiento y prueba con un tamaño de prueba del 0.3 y un estado aleatorio de 42:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    'B': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
})

# Create a target variable
y = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1]

# Add the target variable as a new column in the DataFrame
df['target'] = y

# Display the combined DataFrame
print(df)

Esperamos que estos ejercicios te ayuden a comprender mejor la preprocesamiento de datos. ¡Feliz programación!

3.6 Ejercicios Prácticos

Los ejercicios prácticos son una excelente manera de reforzar los conceptos que hemos aprendido en este capítulo. Vamos a sumergirnos en algunos ejercicios que te ayudarán a obtener experiencia práctica en el preprocesamiento de datos.

Ejercicio 1: Limpieza de Datos

Dado el siguiente DataFrame, realiza la limpieza de datos llenando los valores faltantes con la media de la columna respectiva:

import pandas as pd
import numpy as np

# Create a DataFrame with missing values
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [np.nan, 2, 3, 4, 5],
    'C': [1, 2, 3, np.nan, np.nan]
})

# Drop rows with missing values
df_dropped_rows = df.dropna()

# Drop columns with missing values
df_dropped_columns = df.dropna(axis=1)

# Fill missing values with a specific value (e.g., 0)
df_filled = df.fillna(0)

# Fill missing values with the mean of the column
df_filled_mean = df.fillna(df.mean())

# Impute missing values using forward fill
df_ffill = df.fillna(method='ffill')

# Impute missing values using backward fill
df_bfill = df.fillna(method='bfill')

print("DataFrame with dropped rows:")
print(df_dropped_rows)
print("\nDataFrame with dropped columns:")
print(df_dropped_columns)
print("\nDataFrame with missing values filled with 0:")
print(df_filled)
print("\nDataFrame with missing values filled with column means:")
print(df_filled_mean)
print("\nDataFrame with missing values filled using forward fill:")
print(df_ffill)
print("\nDataFrame with missing values filled using backward fill:")
print(df_bfill)

Ejercicio 2: Ingeniería de Características

Dado el siguiente DataFrame, crea una nueva característica 'D' que sea el producto de 'A', 'B' y 'C':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [2, 3, 4, 5, 6],
    'C': [3, 4, 5, 6, 7]
})

# Display the DataFrame
print(df)

Ejercicio 3: Manejo de Datos Categóricos

Dado el siguiente DataFrame, realiza una codificación one-hot en la característica 'color':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'color': ['red', 'blue', 'green', 'red', 'blue']
})

# Display the DataFrame
print(df)

Ejercicio 4: Escalado y Normalización de Datos

Dado el siguiente DataFrame, realiza una estandarización en todas las características:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [10, 20, 30, 40, 50],
    'C': [100, 200, 300, 400, 500]
})

# Display the DataFrame
print(df)

Ejercicio 5: División de Entrenamiento y Prueba

Dado el siguiente DataFrame y la variable objetivo, realiza una división de entrenamiento y prueba con un tamaño de prueba del 0.3 y un estado aleatorio de 42:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    'B': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
})

# Create a target variable
y = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1]

# Add the target variable as a new column in the DataFrame
df['target'] = y

# Display the combined DataFrame
print(df)

Esperamos que estos ejercicios te ayuden a comprender mejor la preprocesamiento de datos. ¡Feliz programación!

3.6 Ejercicios Prácticos

Los ejercicios prácticos son una excelente manera de reforzar los conceptos que hemos aprendido en este capítulo. Vamos a sumergirnos en algunos ejercicios que te ayudarán a obtener experiencia práctica en el preprocesamiento de datos.

Ejercicio 1: Limpieza de Datos

Dado el siguiente DataFrame, realiza la limpieza de datos llenando los valores faltantes con la media de la columna respectiva:

import pandas as pd
import numpy as np

# Create a DataFrame with missing values
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [np.nan, 2, 3, 4, 5],
    'C': [1, 2, 3, np.nan, np.nan]
})

# Drop rows with missing values
df_dropped_rows = df.dropna()

# Drop columns with missing values
df_dropped_columns = df.dropna(axis=1)

# Fill missing values with a specific value (e.g., 0)
df_filled = df.fillna(0)

# Fill missing values with the mean of the column
df_filled_mean = df.fillna(df.mean())

# Impute missing values using forward fill
df_ffill = df.fillna(method='ffill')

# Impute missing values using backward fill
df_bfill = df.fillna(method='bfill')

print("DataFrame with dropped rows:")
print(df_dropped_rows)
print("\nDataFrame with dropped columns:")
print(df_dropped_columns)
print("\nDataFrame with missing values filled with 0:")
print(df_filled)
print("\nDataFrame with missing values filled with column means:")
print(df_filled_mean)
print("\nDataFrame with missing values filled using forward fill:")
print(df_ffill)
print("\nDataFrame with missing values filled using backward fill:")
print(df_bfill)

Ejercicio 2: Ingeniería de Características

Dado el siguiente DataFrame, crea una nueva característica 'D' que sea el producto de 'A', 'B' y 'C':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [2, 3, 4, 5, 6],
    'C': [3, 4, 5, 6, 7]
})

# Display the DataFrame
print(df)

Ejercicio 3: Manejo de Datos Categóricos

Dado el siguiente DataFrame, realiza una codificación one-hot en la característica 'color':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'color': ['red', 'blue', 'green', 'red', 'blue']
})

# Display the DataFrame
print(df)

Ejercicio 4: Escalado y Normalización de Datos

Dado el siguiente DataFrame, realiza una estandarización en todas las características:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [10, 20, 30, 40, 50],
    'C': [100, 200, 300, 400, 500]
})

# Display the DataFrame
print(df)

Ejercicio 5: División de Entrenamiento y Prueba

Dado el siguiente DataFrame y la variable objetivo, realiza una división de entrenamiento y prueba con un tamaño de prueba del 0.3 y un estado aleatorio de 42:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    'B': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
})

# Create a target variable
y = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1]

# Add the target variable as a new column in the DataFrame
df['target'] = y

# Display the combined DataFrame
print(df)

Esperamos que estos ejercicios te ayuden a comprender mejor la preprocesamiento de datos. ¡Feliz programación!

3.6 Ejercicios Prácticos

Los ejercicios prácticos son una excelente manera de reforzar los conceptos que hemos aprendido en este capítulo. Vamos a sumergirnos en algunos ejercicios que te ayudarán a obtener experiencia práctica en el preprocesamiento de datos.

Ejercicio 1: Limpieza de Datos

Dado el siguiente DataFrame, realiza la limpieza de datos llenando los valores faltantes con la media de la columna respectiva:

import pandas as pd
import numpy as np

# Create a DataFrame with missing values
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [np.nan, 2, 3, 4, 5],
    'C': [1, 2, 3, np.nan, np.nan]
})

# Drop rows with missing values
df_dropped_rows = df.dropna()

# Drop columns with missing values
df_dropped_columns = df.dropna(axis=1)

# Fill missing values with a specific value (e.g., 0)
df_filled = df.fillna(0)

# Fill missing values with the mean of the column
df_filled_mean = df.fillna(df.mean())

# Impute missing values using forward fill
df_ffill = df.fillna(method='ffill')

# Impute missing values using backward fill
df_bfill = df.fillna(method='bfill')

print("DataFrame with dropped rows:")
print(df_dropped_rows)
print("\nDataFrame with dropped columns:")
print(df_dropped_columns)
print("\nDataFrame with missing values filled with 0:")
print(df_filled)
print("\nDataFrame with missing values filled with column means:")
print(df_filled_mean)
print("\nDataFrame with missing values filled using forward fill:")
print(df_ffill)
print("\nDataFrame with missing values filled using backward fill:")
print(df_bfill)

Ejercicio 2: Ingeniería de Características

Dado el siguiente DataFrame, crea una nueva característica 'D' que sea el producto de 'A', 'B' y 'C':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [2, 3, 4, 5, 6],
    'C': [3, 4, 5, 6, 7]
})

# Display the DataFrame
print(df)

Ejercicio 3: Manejo de Datos Categóricos

Dado el siguiente DataFrame, realiza una codificación one-hot en la característica 'color':

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'color': ['red', 'blue', 'green', 'red', 'blue']
})

# Display the DataFrame
print(df)

Ejercicio 4: Escalado y Normalización de Datos

Dado el siguiente DataFrame, realiza una estandarización en todas las características:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [10, 20, 30, 40, 50],
    'C': [100, 200, 300, 400, 500]
})

# Display the DataFrame
print(df)

Ejercicio 5: División de Entrenamiento y Prueba

Dado el siguiente DataFrame y la variable objetivo, realiza una división de entrenamiento y prueba con un tamaño de prueba del 0.3 y un estado aleatorio de 42:

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    'B': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
})

# Create a target variable
y = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1]

# Add the target variable as a new column in the DataFrame
df['target'] = y

# Display the combined DataFrame
print(df)

Esperamos que estos ejercicios te ayuden a comprender mejor la preprocesamiento de datos. ¡Feliz programación!