Andmeteadus

Kuidas kasutada Pythoni NumPy unikaalset () funktsiooni

Kuidas kasutada Pythoni NumPy unikaalset () funktsiooni

NumPy teeki kasutatakse pythonis ühe või mitme mõõtmelise massiivi loomiseks ja sellel on massiiviga töötamiseks palju funktsioone. Funktsioon unikaalne () on üks selle teegi kasulikest funktsioonidest massiivi unikaalsete väärtuste väljaselgitamiseks ja järjestatud kordumatute väärtuste tagastamiseks. See funktsioon võib tagastada ka hulga massiivi väärtusi, assotsiatiivsete indeksite massiivi ja iga kordumatu väärtuse kuvamise arvu põhimassiivis. Selle funktsiooni erinevad kasutusalad on toodud selles õpetuses.

Süntaks:

Selle funktsiooni süntaks on toodud allpool.

massiivi numpy.ainulaadne (sisend_kaard, tagastatav_indeks, tagasipöördumine, tagasiarved, telg)

Sellel funktsioonil võib olla viis argumenti ja nende argumentide eesmärki selgitatakse allpool.

Funktsioon unikaalne () võib argumentide väärtuste põhjal tagastada nelja tüüpi massiive.

Näide 1: printige ühemõõtmelise massiivi unikaalsed väärtused

Järgmine näide näitab funktsiooni unikaalset () kasutamist massiivi loomiseks ühemõõtmelise massiivi unikaalsete väärtustega. Funktsiooni unikaalse () argumendi väärtusena on kasutatud ühemõõtmelist 9 elemendi massiivi. Selle funktsiooni tagastatud väärtus on hiljem prinditud.

# Importige NumPy teek
impordi numpy kui np
# Loo täisarvu massiiv
np_array = np.kordumatu ([55, 23, 40, 55, 35, 90, 23, 40, 80])
# Prindi unikaalsed väärtused
print ("Ainulaadsete väärtuste massiiv on: \ n", np_array)

Väljund:

Pärast ülaltoodud skripti käivitamist ilmub järgmine väljund. Sisendimassiiv sisaldab 6 unikaalset elementi, mida kuvatakse väljundis.

Näide 2: unikaalsete väärtuste ja indeksite printimine sisendmassiivi põhjal

Järgmine näide näitab, kuidas kahemõõtmelise massiivi kordumatuid väärtusi ja indekse saab funktsiooni unikaalse () abil. Sisendmassiivina on kasutatud kahemõõtmelist 2 rida ja 6 veergu massiivi. Väärtus return_index argumendiks on seatud Tõsi sisendmassiivi indeksite saamiseks ainulaadsete massiivi väärtuste põhjal.

# Importige NumPy teek
impordi numpy kui np
# Loo kahemõõtmeline massiiv
np_array = np.massiiv ([[6, 4, 9, 6, 2, 9], [3, 7, 7, 6, 1, 3]])
# Printige kahemõõtmeline massiiv
print ("Kahemõõtmelise massiivi sisu: \ n", np_array)
# Loo ainulaadne massiiv ja ainulaadsete väärtuste indeksmassiiv
ainulaadne_raja, indeksi_raay = np.kordumatu (np_array, return_index = True)
# Trükkige unikaalsete ja indeksmassiivide väärtused
print ("Unikaalse massiivi sisu: \ n", unikaalne_juur)
print ("Indeksimassiivi sisu: \ n", indeks_array)

Väljund:

Pärast ülaltoodud skripti käivitamist ilmub järgmine väljund. Sisendimassiiv sisaldab 7 unikaalset väärtust. Väljund näitab massiivi 7 unikaalset väärtust ja nende väärtuste 7 indeksi massiivist.

Näide 3: unikaalsete väärtuste ja indeksite printimine väljundmassiivi põhjal

Järgmine näide näitab, kuidas ühemõõtmelise massiivi unikaalsed väärtused ja kordumatute väärtuste põhised indeksid funktsiooni unikaalse () abil. Skriptis on sisendimassiivina kasutatud ühemõõtmelist 9-elementilist massiivi. Väärtus return_inverse argumendiks on seatud Tõsi see tagastab veel ühe massiivi indekse, mis põhineb ainulaadsel massiivi indeksil. Nii unikaalset massiivi kui ka indeksmassiivi on hiljem trükitud.

# Importige NumPy teek
impordi numpy kui np
# Loo täisarvu massiiv
np_array = np.massiiv ([10, 60, 30, 10, 20, 40, 60, 10, 20])
print ("Sisendmassiivi väärtused: \ n", np_array)
# Loo ainulaadne massiiv ja pöördmassiiv
ainulaadne_värv, pöördvõrdeline_nr = np.kordumatu (np_array, return_inverse = True)
# Trükkige kordumatu massiivi ja pöördmassiivi väärtused
print ("Unikaalse massiivi väärtused: \ n", unikaalne_kaart)
print ("Pöördmassiivi väärtused: \ n", pöörd_arv)

Väljund:

Pärast ülaltoodud skripti käivitamist ilmub järgmine väljund. Väljund näitas sisendmassiivi, unikaalset massiivi ja pöördmassiivi. Sisendimassiiv sisaldab 5 unikaalset väärtust. Need on 10, 20, 30, 40 ja 60. Sisendmassiiv sisaldab 10 kolme indeksit, mis on ainulaadse massiivi esimene element. Niisiis, 0 on pöördmassiivis ilmunud kolm korda. Teised pöördmassiivi väärtused on paigutatud samamoodi.

Näide 4: printige kordumatud väärtused ja iga kordumatu väärtuse sagedus

Järgmine näide näitab, kuidas funktsioon unikaalne () saab sisendmassiivi unikaalsete väärtuste ja sageduse hankida. Väärtus return_counts argumendiks on seatud Tõsi sagedusväärtuste massiivi saamiseks. Funktsioonis unikaalne () on sisendmassiivina kasutatud 12 elemendi ühemõõtmelist massiivi. Ainulaadsete väärtuste ja sageduse väärtuste massiiv on hiljem välja trükitud.

# Importige NumPy teek
impordi numpy kui np
# Loo täisarvu massiiv
np_array = np.massiiv ([70, 40, 90, 50, 20, 90, 50, 20, 80, 10, 40, 30])
print ("Sisendmassiivi väärtused: \ n", np_array)
# Loo ainulaadne massiiv ja loe massiiv
kordumatu_arv, loenduse_arv = np.kordumatu (np_array, return_counts = True)
# Trükkige kordumatu massiivi ja pöördmassiivi väärtused
print ("Unikaalse massiivi väärtused: \ n", unikaalne_kaart)
print ("Count array väärtused: \ n", count_array)

Väljund:

Pärast ülaltoodud skripti käivitamist ilmub järgmine väljund. Väljundisse on trükitud sisendmassiiv, unikaalne massiiv ja loendusmassiiv.

Järeldus

Ainulaadsete () funktsioonide üksikasjalikku kasutamist on selles õpetuses selgitatud mitme näite abil. See funktsioon võib tagastada erinevate massiivide väärtused ja on siin näidatud, kasutades ühemõõtmelisi ja kahemõõtmelisi massiive.

Parimad Linuxi mängukonsooli emulaatorid
Selles artiklis loetletakse Linuxi jaoks saadaval olev populaarne mängukonsooli emuleerimise tarkvara. Emuleerimine on tarkvara ühilduvuse kiht, mis j...
Parimad mängude jaoks mõeldud Linuxi distrod 2021. aastal
Linuxi operatsioonisüsteem on oma algsest, lihtsast, serveripõhisest välimusest kaugele jõudnud. See operatsioonisüsteem on viimastel aastatel tohutul...
Kuidas Linuxis oma mänguseanssi jäädvustada ja voogesitada
Varem peeti mängude mängimist ainult hobiks, kuid aja jooksul kasvas mängutööstus tehnoloogia ja mängijate arvu osas tohutult. Mängupublik on veebimän...