Capítulo 2: Python y bibliotecas esenciales para la ciencia de datos
Ejercicios Prácticos: Capítulo 2
Ejercicio 1: Trabajando con Arrays de NumPy
Tarea: Crea un array de NumPy con los valores [10, 20, 30, 40, 50]
. Redimensiona el array en un array de 2x3 y calcula la suma de todos los elementos.
Solución:
import numpy as np
# Create a NumPy array
array = np.array([10, 20, 30, 40, 50, 60])
# Reshape the array into 2x3
reshaped_array = array.reshape(2, 3)
# Calculate the sum of all elements
total_sum = np.sum(reshaped_array)
print("Reshaped Array:\\n", reshaped_array)
print("Total Sum:", total_sum)
Ejercicio 2: Manipulación Básica de Datos con Pandas
Tarea: Crea un DataFrame de Pandas con los siguientes datos:
Luego:
- Selecciona las columnas
Nombre
ySalario
. - Filtra las filas donde la
Edad
sea mayor que 30.
Solución:
import pandas as pd
# Create a DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
# Select Name and Salary columns
selected_columns = df[['Name', 'Salary']]
print("Selected Columns:\\n", selected_columns)
# Filter rows where Age is greater than 30
filtered_df = df[df['Age'] > 30]
print("\\nFiltered DataFrame (Age > 30):\\n", filtered_df)
Ejercicio 3: Visualización de Datos con Matplotlib
Tarea: Traza un gráfico de líneas con los valores de x [1, 2, 3, 4, 5]
y los valores de y [10, 20, 25, 40, 50]
. Agrega etiquetas al eje x, al eje y y un título al gráfico.
Solución:
import matplotlib.pyplot as plt
# Data
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 40, 50]
# Create a line plot
plt.plot(x, y, marker='o', color='b')
# Add labels and title
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.title("Line Graph Example")
# Show the plot
plt.show()
Ejercicio 4: Visualización de Datos con Seaborn
Tarea: Carga el conjunto de datos Iris utilizando Seaborn y crea un gráfico de pares que muestre las relaciones entre las características. Usa la columna species
como el hue para diferenciar entre las especies.
Solución:
import seaborn as sns
import matplotlib.pyplot as plt
# Load the Iris dataset
iris = sns.load_dataset('iris')
# Create a pair plot
sns.pairplot(iris, hue='species')
# Show the plot
plt.show()
Ejercicio 5: Usando Scikit-learn para Clasificación
Tarea: Utiliza el conjunto de datos Iris de Scikit-learn y entrena un modelo de Regresión Logística. Divide el conjunto de datos en conjuntos de entrenamiento y prueba (80% entrenamiento, 20% prueba), entrena el modelo y luego evalúa su precisión en el conjunto de prueba.
Solución:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# Load the Iris dataset
iris = load_iris()
X = iris.data
y = iris.target
# Split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Train the logistic regression model
model = LogisticRegression(max_iter=200)
model.fit(X_train, y_train)
# Make predictions on the test set
y_pred = model.predict(X_test)
# Calculate the accuracy
accuracy = accuracy_score(y_test, y_pred)
print(f"Model Accuracy: {accuracy:.2f}")
Ejercicio 6: Trabajando con Google Colab
Tarea: En Google Colab, crea un nuevo cuaderno y escribe un programa simple en TensorFlow que verifique si hay una GPU disponible. Si se encuentra una GPU, realiza una multiplicación de matrices básica utilizando TensorFlow.
Solución:
import tensorflow as tf
# Check if a GPU is available
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
# Create two matrices and perform matrix multiplication
a = tf.constant([[1.0, 2.0], [3.0, 4.0]])
b = tf.constant([[1.0, 0.0], [0.0, 1.0]])
# Multiply the matrices
result = tf.matmul(a, b)
# Print the result
print("Result of matrix multiplication:\\n", result)
Estos ejercicios prácticos consolidan tu comprensión de los conceptos clave discutidos en el Capítulo 2. Desde trabajar con arrays de NumPy y DataFrames de Pandas hasta visualizar datos utilizando Matplotlib y Seaborn, y finalmente entrenar un modelo de machine learning con Scikit-learn—has adquirido experiencia práctica con herramientas esenciales en ciencia de datos. Además, has aprendido a aprovechar Google Colab para utilizar recursos en la nube en experimentos de machine learning.
Ejercicios Prácticos: Capítulo 2
Ejercicio 1: Trabajando con Arrays de NumPy
Tarea: Crea un array de NumPy con los valores [10, 20, 30, 40, 50]
. Redimensiona el array en un array de 2x3 y calcula la suma de todos los elementos.
Solución:
import numpy as np
# Create a NumPy array
array = np.array([10, 20, 30, 40, 50, 60])
# Reshape the array into 2x3
reshaped_array = array.reshape(2, 3)
# Calculate the sum of all elements
total_sum = np.sum(reshaped_array)
print("Reshaped Array:\\n", reshaped_array)
print("Total Sum:", total_sum)
Ejercicio 2: Manipulación Básica de Datos con Pandas
Tarea: Crea un DataFrame de Pandas con los siguientes datos:
Luego:
- Selecciona las columnas
Nombre
ySalario
. - Filtra las filas donde la
Edad
sea mayor que 30.
Solución:
import pandas as pd
# Create a DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
# Select Name and Salary columns
selected_columns = df[['Name', 'Salary']]
print("Selected Columns:\\n", selected_columns)
# Filter rows where Age is greater than 30
filtered_df = df[df['Age'] > 30]
print("\\nFiltered DataFrame (Age > 30):\\n", filtered_df)
Ejercicio 3: Visualización de Datos con Matplotlib
Tarea: Traza un gráfico de líneas con los valores de x [1, 2, 3, 4, 5]
y los valores de y [10, 20, 25, 40, 50]
. Agrega etiquetas al eje x, al eje y y un título al gráfico.
Solución:
import matplotlib.pyplot as plt
# Data
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 40, 50]
# Create a line plot
plt.plot(x, y, marker='o', color='b')
# Add labels and title
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.title("Line Graph Example")
# Show the plot
plt.show()
Ejercicio 4: Visualización de Datos con Seaborn
Tarea: Carga el conjunto de datos Iris utilizando Seaborn y crea un gráfico de pares que muestre las relaciones entre las características. Usa la columna species
como el hue para diferenciar entre las especies.
Solución:
import seaborn as sns
import matplotlib.pyplot as plt
# Load the Iris dataset
iris = sns.load_dataset('iris')
# Create a pair plot
sns.pairplot(iris, hue='species')
# Show the plot
plt.show()
Ejercicio 5: Usando Scikit-learn para Clasificación
Tarea: Utiliza el conjunto de datos Iris de Scikit-learn y entrena un modelo de Regresión Logística. Divide el conjunto de datos en conjuntos de entrenamiento y prueba (80% entrenamiento, 20% prueba), entrena el modelo y luego evalúa su precisión en el conjunto de prueba.
Solución:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# Load the Iris dataset
iris = load_iris()
X = iris.data
y = iris.target
# Split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Train the logistic regression model
model = LogisticRegression(max_iter=200)
model.fit(X_train, y_train)
# Make predictions on the test set
y_pred = model.predict(X_test)
# Calculate the accuracy
accuracy = accuracy_score(y_test, y_pred)
print(f"Model Accuracy: {accuracy:.2f}")
Ejercicio 6: Trabajando con Google Colab
Tarea: En Google Colab, crea un nuevo cuaderno y escribe un programa simple en TensorFlow que verifique si hay una GPU disponible. Si se encuentra una GPU, realiza una multiplicación de matrices básica utilizando TensorFlow.
Solución:
import tensorflow as tf
# Check if a GPU is available
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
# Create two matrices and perform matrix multiplication
a = tf.constant([[1.0, 2.0], [3.0, 4.0]])
b = tf.constant([[1.0, 0.0], [0.0, 1.0]])
# Multiply the matrices
result = tf.matmul(a, b)
# Print the result
print("Result of matrix multiplication:\\n", result)
Estos ejercicios prácticos consolidan tu comprensión de los conceptos clave discutidos en el Capítulo 2. Desde trabajar con arrays de NumPy y DataFrames de Pandas hasta visualizar datos utilizando Matplotlib y Seaborn, y finalmente entrenar un modelo de machine learning con Scikit-learn—has adquirido experiencia práctica con herramientas esenciales en ciencia de datos. Además, has aprendido a aprovechar Google Colab para utilizar recursos en la nube en experimentos de machine learning.
Ejercicios Prácticos: Capítulo 2
Ejercicio 1: Trabajando con Arrays de NumPy
Tarea: Crea un array de NumPy con los valores [10, 20, 30, 40, 50]
. Redimensiona el array en un array de 2x3 y calcula la suma de todos los elementos.
Solución:
import numpy as np
# Create a NumPy array
array = np.array([10, 20, 30, 40, 50, 60])
# Reshape the array into 2x3
reshaped_array = array.reshape(2, 3)
# Calculate the sum of all elements
total_sum = np.sum(reshaped_array)
print("Reshaped Array:\\n", reshaped_array)
print("Total Sum:", total_sum)
Ejercicio 2: Manipulación Básica de Datos con Pandas
Tarea: Crea un DataFrame de Pandas con los siguientes datos:
Luego:
- Selecciona las columnas
Nombre
ySalario
. - Filtra las filas donde la
Edad
sea mayor que 30.
Solución:
import pandas as pd
# Create a DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
# Select Name and Salary columns
selected_columns = df[['Name', 'Salary']]
print("Selected Columns:\\n", selected_columns)
# Filter rows where Age is greater than 30
filtered_df = df[df['Age'] > 30]
print("\\nFiltered DataFrame (Age > 30):\\n", filtered_df)
Ejercicio 3: Visualización de Datos con Matplotlib
Tarea: Traza un gráfico de líneas con los valores de x [1, 2, 3, 4, 5]
y los valores de y [10, 20, 25, 40, 50]
. Agrega etiquetas al eje x, al eje y y un título al gráfico.
Solución:
import matplotlib.pyplot as plt
# Data
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 40, 50]
# Create a line plot
plt.plot(x, y, marker='o', color='b')
# Add labels and title
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.title("Line Graph Example")
# Show the plot
plt.show()
Ejercicio 4: Visualización de Datos con Seaborn
Tarea: Carga el conjunto de datos Iris utilizando Seaborn y crea un gráfico de pares que muestre las relaciones entre las características. Usa la columna species
como el hue para diferenciar entre las especies.
Solución:
import seaborn as sns
import matplotlib.pyplot as plt
# Load the Iris dataset
iris = sns.load_dataset('iris')
# Create a pair plot
sns.pairplot(iris, hue='species')
# Show the plot
plt.show()
Ejercicio 5: Usando Scikit-learn para Clasificación
Tarea: Utiliza el conjunto de datos Iris de Scikit-learn y entrena un modelo de Regresión Logística. Divide el conjunto de datos en conjuntos de entrenamiento y prueba (80% entrenamiento, 20% prueba), entrena el modelo y luego evalúa su precisión en el conjunto de prueba.
Solución:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# Load the Iris dataset
iris = load_iris()
X = iris.data
y = iris.target
# Split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Train the logistic regression model
model = LogisticRegression(max_iter=200)
model.fit(X_train, y_train)
# Make predictions on the test set
y_pred = model.predict(X_test)
# Calculate the accuracy
accuracy = accuracy_score(y_test, y_pred)
print(f"Model Accuracy: {accuracy:.2f}")
Ejercicio 6: Trabajando con Google Colab
Tarea: En Google Colab, crea un nuevo cuaderno y escribe un programa simple en TensorFlow que verifique si hay una GPU disponible. Si se encuentra una GPU, realiza una multiplicación de matrices básica utilizando TensorFlow.
Solución:
import tensorflow as tf
# Check if a GPU is available
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
# Create two matrices and perform matrix multiplication
a = tf.constant([[1.0, 2.0], [3.0, 4.0]])
b = tf.constant([[1.0, 0.0], [0.0, 1.0]])
# Multiply the matrices
result = tf.matmul(a, b)
# Print the result
print("Result of matrix multiplication:\\n", result)
Estos ejercicios prácticos consolidan tu comprensión de los conceptos clave discutidos en el Capítulo 2. Desde trabajar con arrays de NumPy y DataFrames de Pandas hasta visualizar datos utilizando Matplotlib y Seaborn, y finalmente entrenar un modelo de machine learning con Scikit-learn—has adquirido experiencia práctica con herramientas esenciales en ciencia de datos. Además, has aprendido a aprovechar Google Colab para utilizar recursos en la nube en experimentos de machine learning.
Ejercicios Prácticos: Capítulo 2
Ejercicio 1: Trabajando con Arrays de NumPy
Tarea: Crea un array de NumPy con los valores [10, 20, 30, 40, 50]
. Redimensiona el array en un array de 2x3 y calcula la suma de todos los elementos.
Solución:
import numpy as np
# Create a NumPy array
array = np.array([10, 20, 30, 40, 50, 60])
# Reshape the array into 2x3
reshaped_array = array.reshape(2, 3)
# Calculate the sum of all elements
total_sum = np.sum(reshaped_array)
print("Reshaped Array:\\n", reshaped_array)
print("Total Sum:", total_sum)
Ejercicio 2: Manipulación Básica de Datos con Pandas
Tarea: Crea un DataFrame de Pandas con los siguientes datos:
Luego:
- Selecciona las columnas
Nombre
ySalario
. - Filtra las filas donde la
Edad
sea mayor que 30.
Solución:
import pandas as pd
# Create a DataFrame
data = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
# Select Name and Salary columns
selected_columns = df[['Name', 'Salary']]
print("Selected Columns:\\n", selected_columns)
# Filter rows where Age is greater than 30
filtered_df = df[df['Age'] > 30]
print("\\nFiltered DataFrame (Age > 30):\\n", filtered_df)
Ejercicio 3: Visualización de Datos con Matplotlib
Tarea: Traza un gráfico de líneas con los valores de x [1, 2, 3, 4, 5]
y los valores de y [10, 20, 25, 40, 50]
. Agrega etiquetas al eje x, al eje y y un título al gráfico.
Solución:
import matplotlib.pyplot as plt
# Data
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 40, 50]
# Create a line plot
plt.plot(x, y, marker='o', color='b')
# Add labels and title
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.title("Line Graph Example")
# Show the plot
plt.show()
Ejercicio 4: Visualización de Datos con Seaborn
Tarea: Carga el conjunto de datos Iris utilizando Seaborn y crea un gráfico de pares que muestre las relaciones entre las características. Usa la columna species
como el hue para diferenciar entre las especies.
Solución:
import seaborn as sns
import matplotlib.pyplot as plt
# Load the Iris dataset
iris = sns.load_dataset('iris')
# Create a pair plot
sns.pairplot(iris, hue='species')
# Show the plot
plt.show()
Ejercicio 5: Usando Scikit-learn para Clasificación
Tarea: Utiliza el conjunto de datos Iris de Scikit-learn y entrena un modelo de Regresión Logística. Divide el conjunto de datos en conjuntos de entrenamiento y prueba (80% entrenamiento, 20% prueba), entrena el modelo y luego evalúa su precisión en el conjunto de prueba.
Solución:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# Load the Iris dataset
iris = load_iris()
X = iris.data
y = iris.target
# Split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Train the logistic regression model
model = LogisticRegression(max_iter=200)
model.fit(X_train, y_train)
# Make predictions on the test set
y_pred = model.predict(X_test)
# Calculate the accuracy
accuracy = accuracy_score(y_test, y_pred)
print(f"Model Accuracy: {accuracy:.2f}")
Ejercicio 6: Trabajando con Google Colab
Tarea: En Google Colab, crea un nuevo cuaderno y escribe un programa simple en TensorFlow que verifique si hay una GPU disponible. Si se encuentra una GPU, realiza una multiplicación de matrices básica utilizando TensorFlow.
Solución:
import tensorflow as tf
# Check if a GPU is available
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
# Create two matrices and perform matrix multiplication
a = tf.constant([[1.0, 2.0], [3.0, 4.0]])
b = tf.constant([[1.0, 0.0], [0.0, 1.0]])
# Multiply the matrices
result = tf.matmul(a, b)
# Print the result
print("Result of matrix multiplication:\\n", result)
Estos ejercicios prácticos consolidan tu comprensión de los conceptos clave discutidos en el Capítulo 2. Desde trabajar con arrays de NumPy y DataFrames de Pandas hasta visualizar datos utilizando Matplotlib y Seaborn, y finalmente entrenar un modelo de machine learning con Scikit-learn—has adquirido experiencia práctica con herramientas esenciales en ciencia de datos. Además, has aprendido a aprovechar Google Colab para utilizar recursos en la nube en experimentos de machine learning.