Intermediate Python
Run the hidden code cell below to import the data used in this course.
1 hidden cell
Take Notes
Add notes about the concepts you've learned and code cells with code you want to keep.
Lógica en PYTHON:
Para poder evaluar una propuesta lógica en Python se hace uso de los comandos generales "and, or y not", asi pues
X=p1 and p2 and p3 and p4 and p5.....
El valor Boleano de X dependerá de los valores de pi igual que en la lógica binaria.Ahora bien, los vectores de numpy son algo particular, para ello se ocupan los siguientes comandos:
np.logical_(Aquí se escribe el operador lógico sin los paréntesis)[Evaluación lógica en array 1,Evaluación lógica en array 2]
Esto lo que hace es hacer comapraciones lógicas entre ambos array de Numpy
# Add your code snippets here
Explore Datasets
Use the DataFrames imported in the first cell to explore the data and practice your skills!
- Create a loop that iterates through the
brics
DataFrame and prints "The population of {country} is {population} million!". - Create a histogram of the life expectancies for countries in Africa in the
gapminder
DataFrame. Make sure your plot has a title, axis labels, and has an appropriate number of bins. - Simulate 10 rolls of two six-sided dice. If the two dice add up to 7 or 11, print "A win!". If the two dice add up to 2, 3, or 12, print "A loss!". If the two dice add up to any other number, print "Roll again!".
import pandas as pd
import numpy as np
X=np.array([1,2,3,4,5,6,7,8,9])
Y=np.array([10,11,12,13,14,15,16,17,18])
print(np.logical_and(X>5,Y>5))
#Lo que hace es comparar x1 con y1, x2 con y2, x3 con y3..., de tal manera que las proposiciones logicas 1 y 2 son x1 y y1 respectivamente y así sucesivamente
Dado que pandas es una expansión de la propia paqueteria de numpy, también es factible el utilizar los comparativos lógicos de numpy en los data frames. Del mismo modo es factible hacer una señalación a una sección de una base de datos y relaizar un filtro de su información:
Sea "cars" la base de datos
cpc=cars["cars_per_cap"] medium=cars[np.logical_and(cpc>100,cpc<500)] #Evalúa lógicamente cuales de los valores de carros por cápita superan los 100 pero son menores que 500, de esta manera cuando se busca dentro de cars[] solamente se mostrarán los valores lógicos TRUE print(cars[medium])
########---------------------------------------------
Bucles en Data Frames
Método .items(): El método .items() se utiliza en Python para obtener una vista de los pares clave-valor de un diccionario. Proporciona una forma conveniente de iterar sobre los elementos de un diccionario y acceder tanto a las claves como a los valores correspondientes.
frutas = {'manzana': 3, 'plátano': 2, 'naranja': 5}
for fruta, cantidad in frutas.items(): print(f'Fruta: {fruta}, Cantidad: {cantidad}')
"El método np.nditer()": El método np.nditer() es una función en NumPy que se utiliza para recorrer de manera eficiente los elementos de un arreglo multidimensional de NumPy.
Aquí tienes un ejemplo básico de cómo usar np.nditer():
import numpy as np
arr = np.array([[1, 2], [3, 4]])
#Iteración con np.nditer() for element in np.nditer(arr): print(element)
#LOOP DATA STRUCTURES IN DATA FRAMES #.iterrows() El método .iterrows() es un método conveniente en pandas que se utiliza para iterar sobre las filas de un DataFrame. Proporciona una forma fácil de acceder a los índices y los valores de cada fila en un bucle, lo que facilita el procesamiento y la manipulación de los datos.
Aquí tienes un ejemplo que ilustra cómo funciona el método .iterrows():
python Copy code import pandas as pd
datos = {'Nombre': ['Juan', 'María', 'Pedro'], 'Edad': [25, 30, 35], 'Ciudad': ['Madrid', 'Barcelona', 'Sevilla']}
df = pd.DataFrame(datos)
for indice, fila in df.iterrows(): print(f'Índice: {indice}, Fila: {fila}')
#---------------------------------------------------- El método .apply()
El método .apply() en pandas se utiliza para aplicar una función a lo largo de un eje específico de un DataFrame o una Serie. Proporciona una forma poderosa y flexible de aplicar transformaciones o cálculos personalizados a los datos.
Aquí tienes un ejemplo que ilustra cómo funciona el método .apply():
import pandas as pd
datos = {'Nombre': ['Juan', 'María', 'Pedro'], 'Edad': [25, 30, 35]}
df = pd.DataFrame(datos)
def saludar(nombre): return f'Hola, {nombre}!'
df['Saludo'] = df['Nombre'].apply(saludar)
print(df)