Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Taulukoiden Lajittelu | Yleisesti Käytetyt NumPy-Funktiot
Ultimate NumPy

bookTaulukoiden Lajittelu

Note
Määritelmä

Lajittelu tarkoittaa taulukon alkioiden järjestämistä tiettyyn järjestykseen.

Tämä toiminto on erittäin hyödyllinen, koska haku lajitellusta taulukosta on paljon nopeampaa, sillä tehokkaat algoritmit kuten binäärihaku toimivat vain lajitelluilla taulukoilla.

numpy.sort()-funktio

NumPy sisältää sisäänrakennetun sort()-funktion, jolla voidaan järjestää alkiot arvojen mukaiseen nousevaan järjestykseen. Tämän funktion palautusarvo on lajiteltu NumPy-taulukko. Yleinen syntaksi on: numpy.sort(a, axis=-1, kind=None, order=None), jossa:

  • a on taulukko;
  • axis on akseli, jonka mukaan lajitellaan (oletuksena viimeinen akseli (-1));
  • kind on käytettävä lajittelualgoritmi (oletuksena quicksort).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

ndarray.sort()-menetelmä

Kuten jo mainittiin, numpy.sort()-funktio palauttaa lajitellun taulukon, mutta ei muuta alkuperäistä taulukkoa. Jos halutaan muuttaa taulukkoa, täytyy kirjoittaa array = np.sort(array).

NumPy tarjoaa kuitenkin vaihtoehtoisesti .sort()-menetelmän, joka lajittelee taulukon paikan päällä eikä palauta uutta taulukkoa (palauttaa None, eli ei palauta mitään). Sen syntaksi on samanlainen kuin sort()-funktion.

Note
Huomio

Funktio on itsenäinen koodilohko, joka suorittaa tietyn tehtävän ja jota voidaan kutsua suoraan. Metodi on olioon liitetty funktio, jota kutsutaan kyseisellä oliolla käyttäen .-operaattoria.

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
copy

.sort()-metodin kutsumisen jälkeen array_1d lajitellaan paikan päällä ja sisältää nyt alkiot lajiteltuna nousevaan järjestykseen.

Yksidimensionaalisten taulukoiden lajittelu laskevaan järjestykseen

Joskus taulukko halutaan lajitella laskevaan järjestykseen. Kumpikaan .sort()-metodi tai sort()-funktio ei tue tätä ominaisuutta suoraan. Voimme kuitenkin käyttää viipalointia asettamalla step arvoksi -1 lajitellulle taulukolle:

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
copy
Tehtävä

Swipe to start coding

Hallitset työntekijöiden palkkojen tietojoukkoa, joka on tallennettu salaries-taulukkoon.

  1. Järjestä palkat laskevaan järjestykseen käyttämällä sopivaa funktiota.
  2. Tulosta kolme korkeinta palkkaa käyttämällä viipaletta ja määrittämällä vain positiivinen end-arvo.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 1
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

Awesome!

Completion rate improved to 3.7

bookTaulukoiden Lajittelu

Pyyhkäise näyttääksesi valikon

Note
Määritelmä

Lajittelu tarkoittaa taulukon alkioiden järjestämistä tiettyyn järjestykseen.

Tämä toiminto on erittäin hyödyllinen, koska haku lajitellusta taulukosta on paljon nopeampaa, sillä tehokkaat algoritmit kuten binäärihaku toimivat vain lajitelluilla taulukoilla.

numpy.sort()-funktio

NumPy sisältää sisäänrakennetun sort()-funktion, jolla voidaan järjestää alkiot arvojen mukaiseen nousevaan järjestykseen. Tämän funktion palautusarvo on lajiteltu NumPy-taulukko. Yleinen syntaksi on: numpy.sort(a, axis=-1, kind=None, order=None), jossa:

  • a on taulukko;
  • axis on akseli, jonka mukaan lajitellaan (oletuksena viimeinen akseli (-1));
  • kind on käytettävä lajittelualgoritmi (oletuksena quicksort).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

ndarray.sort()-menetelmä

Kuten jo mainittiin, numpy.sort()-funktio palauttaa lajitellun taulukon, mutta ei muuta alkuperäistä taulukkoa. Jos halutaan muuttaa taulukkoa, täytyy kirjoittaa array = np.sort(array).

NumPy tarjoaa kuitenkin vaihtoehtoisesti .sort()-menetelmän, joka lajittelee taulukon paikan päällä eikä palauta uutta taulukkoa (palauttaa None, eli ei palauta mitään). Sen syntaksi on samanlainen kuin sort()-funktion.

Note
Huomio

Funktio on itsenäinen koodilohko, joka suorittaa tietyn tehtävän ja jota voidaan kutsua suoraan. Metodi on olioon liitetty funktio, jota kutsutaan kyseisellä oliolla käyttäen .-operaattoria.

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
copy

.sort()-metodin kutsumisen jälkeen array_1d lajitellaan paikan päällä ja sisältää nyt alkiot lajiteltuna nousevaan järjestykseen.

Yksidimensionaalisten taulukoiden lajittelu laskevaan järjestykseen

Joskus taulukko halutaan lajitella laskevaan järjestykseen. Kumpikaan .sort()-metodi tai sort()-funktio ei tue tätä ominaisuutta suoraan. Voimme kuitenkin käyttää viipalointia asettamalla step arvoksi -1 lajitellulle taulukolle:

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
copy
Tehtävä

Swipe to start coding

Hallitset työntekijöiden palkkojen tietojoukkoa, joka on tallennettu salaries-taulukkoon.

  1. Järjestä palkat laskevaan järjestykseen käyttämällä sopivaa funktiota.
  2. Tulosta kolme korkeinta palkkaa käyttämällä viipaletta ja määrittämällä vain positiivinen end-arvo.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 1
single

single

some-alt