Viipalointi
Viipalointi Pythonissa tarkoittaa alkioiden hakemista yhdestä indeksistä toiseen sekvenssissä. Tässä luvussa keskitymme kuitenkin viipalointiin NumPy-taulukoissa.
Viipalointi 1D-taulukoissa
Yleinen syntaksi viipaloinnille 1D-taulukoissa on seuraava: array[start:end:step].
starton indeksi, josta viipalointi alkaa;endon indeksi, johon viipalointi päättyy (itse indeksiä ei oteta mukaan);stepmäärittää indeksien väliset askeleet (oletus on1).
Tässä on esimerkki, joka havainnollistaa kaiken (violetit ruudut edustavat viipaloinnilla haettuja alkioita):
Koska emme määritelleet step-arvoa erikseen, sen oletusarvo on 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:])
Alun, lopun ja askeleen jättäminen pois
Kuten huomaat, voimme usein jättää pois start, end, step tai vaikka kaikki nämä samanaikaisesti. Esimerkiksi step voidaan jättää pois, kun haluamme sen olevan 1. start ja end voidaan jättää pois seuraavissa tilanteissa:
startpois:- Viipalointi ensimmäisestä alkiosta (
steppositiivinen); - Viipalointi viimeisestä alkiosta (
stepnegatiivinen).
- Viipalointi ensimmäisestä alkiosta (
endpois:- Viipalointi viimeiseen alkioon asti (sisältyy,
steppositiivinen); - Viipalointi ensimmäiseen alkioon asti (sisältyy,
stepnegatiivinen).
- Viipalointi viimeiseen alkioon asti (sisältyy,
Katsotaan vielä muutama esimerkki ( musta nuoli osoittaa, että alkiot otetaan käänteisessä järjestyksessä):
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[:])
Alla oleva kuva esittää tehtävässä käytetyn weekly_sales-taulukon rakenteen:
Swipe to start coding
Analysoit pienen vähittäiskaupan päivittäisiä myyntitietoja. Viikon myyntiluvut on tallennettu taulukkoon weekly_sales, jossa kukin alkio edustaa tietyn päivän myyntiä.
- Luo viipale
weekly_sales-taulukosta, joka sisältää joka toisen päivän myyntitiedot alkaen toisesta päivästä (tiistaista). - Käytä positiivista indeksiä
start-arvona ja jätäendmäärittelemättä. - Tallenna tulos muuttujaan
alternate_day_sales.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.7
Viipalointi
Pyyhkäise näyttääksesi valikon
Viipalointi Pythonissa tarkoittaa alkioiden hakemista yhdestä indeksistä toiseen sekvenssissä. Tässä luvussa keskitymme kuitenkin viipalointiin NumPy-taulukoissa.
Viipalointi 1D-taulukoissa
Yleinen syntaksi viipaloinnille 1D-taulukoissa on seuraava: array[start:end:step].
starton indeksi, josta viipalointi alkaa;endon indeksi, johon viipalointi päättyy (itse indeksiä ei oteta mukaan);stepmäärittää indeksien väliset askeleet (oletus on1).
Tässä on esimerkki, joka havainnollistaa kaiken (violetit ruudut edustavat viipaloinnilla haettuja alkioita):
Koska emme määritelleet step-arvoa erikseen, sen oletusarvo on 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:])
Alun, lopun ja askeleen jättäminen pois
Kuten huomaat, voimme usein jättää pois start, end, step tai vaikka kaikki nämä samanaikaisesti. Esimerkiksi step voidaan jättää pois, kun haluamme sen olevan 1. start ja end voidaan jättää pois seuraavissa tilanteissa:
startpois:- Viipalointi ensimmäisestä alkiosta (
steppositiivinen); - Viipalointi viimeisestä alkiosta (
stepnegatiivinen).
- Viipalointi ensimmäisestä alkiosta (
endpois:- Viipalointi viimeiseen alkioon asti (sisältyy,
steppositiivinen); - Viipalointi ensimmäiseen alkioon asti (sisältyy,
stepnegatiivinen).
- Viipalointi viimeiseen alkioon asti (sisältyy,
Katsotaan vielä muutama esimerkki ( musta nuoli osoittaa, että alkiot otetaan käänteisessä järjestyksessä):
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[:])
Alla oleva kuva esittää tehtävässä käytetyn weekly_sales-taulukon rakenteen:
Swipe to start coding
Analysoit pienen vähittäiskaupan päivittäisiä myyntitietoja. Viikon myyntiluvut on tallennettu taulukkoon weekly_sales, jossa kukin alkio edustaa tietyn päivän myyntiä.
- Luo viipale
weekly_sales-taulukosta, joka sisältää joka toisen päivän myyntitiedot alkaen toisesta päivästä (tiistaista). - Käytä positiivista indeksiä
start-arvona ja jätäendmäärittelemättä. - Tallenna tulos muuttujaan
alternate_day_sales.
Ratkaisu
Kiitos palautteestasi!
single