single
Segmentación
Desliza para mostrar el menú
Segmentación en Python se refiere a la obtención de elementos desde un índice hasta otro dentro de una secuencia. Sin embargo, en este capítulo nos centraremos en la segmentación en arreglos de NumPy.
Segmentación en arreglos 1D
La sintaxis general para la segmentación en arreglos 1D es la siguiente: array[start:end:step].
startes el índice en el que comienza la segmentación;endes el índice en el que termina la segmentación (el índice en sí no se incluye);stepespecifica los incrementos entre los índices (el valor predeterminado es1).
Aquí tienes un ejemplo para aclarar todo (los cuadros de color morado representan los elementos obtenidos mediante la segmentación):
Como no especificamos explícitamente step, su valor predeterminado es 1.
123456789import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
Omisión de inicio, fin y paso
Como puedes observar, a menudo podemos omitir los valores de start, end, step o incluso todos al mismo tiempo. Por ejemplo, step puede omitirse cuando queremos que sea igual a 1. start y end pueden omitirse en los siguientes casos:
- Omitir
start:- Corte desde el primer elemento (
stepes positivo); - Corte desde el último elemento (
stepes negativo).
- Corte desde el primer elemento (
- Omitir
end:- Corte hasta el último elemento inclusive (
stepes positivo); - Corte hasta el primer elemento inclusive (
stepes negativo).
- Corte hasta el último elemento inclusive (
Veamos algunos ejemplos más (la flecha negra indica que los elementos se toman en orden inverso):
1234567891011import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
La imagen a continuación muestra la estructura del arreglo weekly_sales utilizado en la tarea:
Desliza para comenzar a programar
Estás analizando los datos de ventas diarias de una pequeña tienda minorista. Las ventas de la última semana están almacenadas en el arreglo weekly_sales, donde cada elemento representa las ventas de un día específico.
- Crea una porción de
weekly_salesque incluya los datos de ventas de cada segundo día, comenzando desde el segundo día (martes). - Utiliza un índice positivo para el
starty deja elendsin especificar. - Guarda el resultado en
alternate_day_sales.
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