single
Encontrar los valores más pequeños de una columna
Desliza para mostrar el menú
Aprenderás otra función crucial, que devuelve los valores más pequeños o más grandes. Ya sabes que podemos ordenar valores y luego extraer un número específico de filas. No es sorprendente que pandas pueda hacerlo usando solo una línea de código. Observa el ejemplo de cómo obtener los quince autos más antiguos:
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(15, 'Year') print(data_smallest.head(15))
Si deseas ordenar por una columna y luego por otra, simplemente coloca una lista con los nombres de las columnas en el orden necesario. Observa el ejemplo donde primero ordenaremos por 'Year' y luego por 'Engine_volume'. Este código primero extraerá los 5 autos más antiguos, y luego, si los años coinciden, el auto con el valor menor en la columna 'Engine_volume' tendrá prioridad:
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(5, ['Year', 'Engine_volume']) print(data_smallest.head())
Intenta comparar los dos ejemplos a continuación. Ahora avanzaremos un poco más con la función. Vamos a mostrar nuestros ejemplos con los valores de la columna 'Year'. En nuestra columna, los valores de 'Year' pueden repetirse, por lo que si queremos mostrar los diez autos más antiguos con la sintaxis anterior, nuestra función solo tomará diez valores. No considera si el valor 11 o 12 es igual al décimo. Podemos agregar el argumento keep = 'all' al método .nsmallest() para evitar estos casos. Observa el ejemplo e intenta ejecutarlo para ver la diferencia:
1234567891011import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case without using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year') print(data_smallest) data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case with using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year', keep = 'all') print(data_smallest)
Desliza para comenzar a programar
Aquí, se debe seguir el siguiente algoritmo:
- Recuperar datos de autos donde los valores de la columna
'Year'sean mayores que2010. - Extraer los
15autos más baratos (los15valores más pequeños de la columna'Price'). Incluir todos los valores duplicados de la columna'Price'. - Mostrar todos los valores del conjunto de datos
data_cheapest.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla