Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Skivning | Indexering och Skivning
Ultimata NumPy

Svep för att visa menyn

book
Skivning

Skivning i Python avser att hämta element från ett index till ett annat inom en sekvens. I det här kapitlet kommer vi dock att fokusera på skivning i NumPy-arrayer.

Skivning i 1D-arrayer

Den allmänna syntaxen för skivning i 1D-arrayer är följande: array[start:end:step].

  • start är indexet där skivningen börjar;

  • end är indexet där skivningen slutar (indexet i sig är inte inkluderat);

  • step specificerar stegen mellan indexen (standard är 1).

Här är ett exempel för att klargöra allt (lila rutor representerar elementen som hämtas från skivning):

Notera

Eftersom vi inte uttryckligen angav step, är standardvärdet 1.

123456789
import 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:])
copy

Utelämna Start, Slut och Steg

Som du kan se kan vi ofta utelämna start, end, step eller till och med alla samtidigt. Till exempel kan step utelämnas när vi vill att det ska vara lika med 1. start och end kan utelämnas i följande scenarier:

  1. Utelämna start:

    • Skiva från det första elementet (step är positiv);

    • Skiva från det sista elementet (step är negativ).

  2. Utelämna end:

    • Skiva till det sista elementet inklusive (step är positiv);

    • Skiva till det första elementet inklusive (step är negativ).

Låt oss titta på några fler exempel (den svarta pilen indikerar att elementen tas i omvänd ordning):

1234567891011
import 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[:])
copy

Bilden nedan visar strukturen för weekly_sales-arrayen som används i uppgiften:

Uppgift

Swipe to start coding

Du analyserar den dagliga försäljningsdatan för en liten detaljhandelsbutik. Försäljningen för den senaste veckan är lagrad i weekly_sales arrayen, där varje element representerar försäljningen för en specifik dag.

  1. Skapa en skiva av weekly_sales som inkluderar försäljningsdatan för varannan dag, med start från den andra dagen (tisdag).

  2. Använd ett positivt index för start och lämna end ospecificerat.

  3. Spara resultatet i alternate_day_sales.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 3
Vi beklagar att något gick fel. Vad hände?

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

book
Skivning

Skivning i Python avser att hämta element från ett index till ett annat inom en sekvens. I det här kapitlet kommer vi dock att fokusera på skivning i NumPy-arrayer.

Skivning i 1D-arrayer

Den allmänna syntaxen för skivning i 1D-arrayer är följande: array[start:end:step].

  • start är indexet där skivningen börjar;

  • end är indexet där skivningen slutar (indexet i sig är inte inkluderat);

  • step specificerar stegen mellan indexen (standard är 1).

Här är ett exempel för att klargöra allt (lila rutor representerar elementen som hämtas från skivning):

Notera

Eftersom vi inte uttryckligen angav step, är standardvärdet 1.

123456789
import 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:])
copy

Utelämna Start, Slut och Steg

Som du kan se kan vi ofta utelämna start, end, step eller till och med alla samtidigt. Till exempel kan step utelämnas när vi vill att det ska vara lika med 1. start och end kan utelämnas i följande scenarier:

  1. Utelämna start:

    • Skiva från det första elementet (step är positiv);

    • Skiva från det sista elementet (step är negativ).

  2. Utelämna end:

    • Skiva till det sista elementet inklusive (step är positiv);

    • Skiva till det första elementet inklusive (step är negativ).

Låt oss titta på några fler exempel (den svarta pilen indikerar att elementen tas i omvänd ordning):

1234567891011
import 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[:])
copy

Bilden nedan visar strukturen för weekly_sales-arrayen som används i uppgiften:

Uppgift

Swipe to start coding

Du analyserar den dagliga försäljningsdatan för en liten detaljhandelsbutik. Försäljningen för den senaste veckan är lagrad i weekly_sales arrayen, där varje element representerar försäljningen för en specifik dag.

  1. Skapa en skiva av weekly_sales som inkluderar försäljningsdatan för varannan dag, med start från den andra dagen (tisdag).

  2. Använd ett positivt index för start och lämna end ospecificerat.

  3. Spara resultatet i alternate_day_sales.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 3
Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Vi beklagar att något gick fel. Vad hände?
some-alt