Looginen Indeksointi
Pyyhkäise näyttääksesi valikon
Booletinen indeksointi (tunnetaan myös nimellä boolean-taulukon indeksointi) mahdollistaa taulukon alkioiden valitsemisen tiettyjen ehtojen perusteella. Tämä indeksointitapa on erittäin hyödyllinen tietojen tehokkaaseen suodattamiseen taulukoissa, erityisesti suurissa taulukoissa.
Booletiset taulukot
Jotta ymmärtäisit, miten booletinen indeksointi toimii, sinun täytyy ensin ymmärtää, mitä booletiset taulukot ovat.
Booletinen taulukko on taulukko, jonka jokainen alkio voi olla joko True tai False.
Tällainen taulukko voidaan luoda joko määrittelemällä sen alkiot eksplisiittisesti tai tietyn ehdon perusteella tietyn taulukon alkioille.
123456import numpy as np # Creating an array of integers from 1 to 10 inclusive array = np.arange(1, 11) # Creating a boolean array based on a condition boolean_array = array > 5 print(boolean_array)
Tässä array on kokonaislukutaulukko, jonka arvot ovat 1–10 mukaan lukien. Sen jälkeen luodaan totuusarvotaulukko nimeltä boolean_array ehdon array > 5 perusteella. Tämä tarkoittaa, että jos jokin array-taulukon alkio on suurempi kuin 5 (ehto on True), vastaava alkio boolean_array-taulukossa on True; muussa tapauksessa se on False.
Ylempi matriisi on alkuperäinen matriisi, jossa vihreät alkiot eivät täytä ehtoa ja violetit alkiot täyttävät ehdon. Alempi matriisi on luotu boolean-matriisi.
Boolean-matriisin indeksointi
Boolean-indeksointi toimii varsin suoraviivaisesti: määritä boolean-matriisi hakaisiin sulkeisiin. Tuloksena ovat ne alkiot, joiden indeksit vastaavat boolean-matriisin True-arvoja.
Voit nähdä, että True-arvoiset alkiot ovat indekseissä 5–9. Tämän seurauksena näissä indekseissä olevat array-taulukon alkiot palautetaan boolean-indeksoinnin avulla (yllä oleva kuva vastaa tätä koodia):
1234import numpy as np # Creating an array of integers from 1 to 10 inclusive array = np.arange(1, 11) print(array[array > 5])
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme