Podatkovna znanost

Kako uporabljati python NumPy, kjer () deluje z več pogoji

Kako uporabljati python NumPy, kjer () deluje z več pogoji
Knjižnica NumPy ima veliko funkcij za ustvarjanje polja v pythonu. kjer je funkcija () ena od njih za ustvarjanje matrike iz druge matrike NumPy na podlagi enega ali več pogojev. Nekatere operacije je mogoče izvesti v času ustvarjanja polja na podlagi pogoja s pomočjo te funkcije. Uporablja se lahko tudi brez pogojnega izraza. Kako je to funkcijo mogoče uporabiti v več pogojih v pythonu, je prikazano v tej vadnici.

Sintaksa:

numpy.kjer (pogoj, [x, y])

pri čemer ima funkcija () dva argumenta. Prvi argument je obvezen, drugi argument pa neobvezen. Če vrednost prvega argumenta (stanje) je true, potem bo izhod vseboval elemente polja iz polja, x sicer iz polja, y. Ta funkcija bo vrnila vrednosti indeksa vhodne matrike, če ne bo uporabljen noben neobvezen argument.

Uporaba funkcije where ():

Za opredelitev stanja te funkcije lahko uporabimo različne vrste logičnih operatorjev. V tem delu vadnice so prikazane funkcije uporabe funkcije () z več pogoji.

Primer -1: Uporaba več pogojev z logičnim ALI

Naslednji primer prikazuje uporabo funkcije where () z neobveznim argumentom in brez njega. Tu je logični OR uporabil za definiranje pogoja. Prva funkcija where () je bila uporabljena v enodimenzionalni matriki, ki bo vrnila matriko indeksov vhodne matrike, kjer se bo vrnil pogoj Prav. Druga funkcija where (), uporabljena v dveh enodimenzionalnih nizih, bo priklicala vrednosti iz prve matrike, ko bo pogoj vrnil True. V nasprotnem primeru bo priklicala vrednosti iz druge matrike.

# Uvozi knjižnico NumPy
uvozi numpy kot np
# Ustvari matriko s pomočjo seznama
np_array1 = np.matrika ([23, 11, 45, 43, 60, 18, 33, 71, 52, 38])
print ("Vrednosti vhodne matrike: \ n", np_array1)
# Ustvari novo matriko na podlagi več pogojev in ene matrike
new_array1 = np.kje ((np_array1 50))
# Natisnite novo matriko
print ("Filtrirane vrednosti polja: \ n", new_array1)
# Ustvari matriko z uporabo vrednosti obsega
np_array2 = np.arange (40, 50)
# Ustvari novo matriko na podlagi več pogojev in dveh nizov
new_array2 = np.kjer ((np_array1 60), np_array1, np_array2)
# Natisnite novo matriko
print ("Filtrirane vrednosti matrike: \ n", new_array2)

Izhod:

Naslednji izhod se bo prikazal po izvedbi zgornjega skripta. Tu se je stanje vrnilo Prav za vrednosti 23,11,18,33 in 38 prve matrike. Stanje se je vrnilo Lažno za vrednosti 45, 43, 60, 71 in 52. Torej so iz drugega polja za vrednosti 45, 43, 60 in 52 dodane 42, 43, 44 in 48. Tu je 71 zunaj dosega.

Primer -2: Uporaba več pogojev z logičnim AND

Naslednji primer prikazuje, kako lahko funkcijo () uporabimo z več pogoji, ki jih definira logični in se uporabi v dveh enodimenzionalnih nizih. Tu smo z uporabo funkcije rand () ustvarili dva enodimenzionalna polja NumPy. Ti nizi so bili uporabljeni v funkciji where () z več pogoji za ustvarjanje novega polja na podlagi pogojev. Stanje se bo vrnilo Prav kadar je vrednost prvega polja manjša od 40, vrednost drugega polja pa večja od 60. Novo polje se je natisnilo pozneje.

# Uvozi knjižnico NumPy
uvozi numpy kot np
# Ustvari dva polja naključnih vrednosti
np_array1 = np.naključen.rand (10) * 100
np_array2 = np.naključen.rand (10) * 100
# Natisnite vrednosti matrike
print ("\ nVrednosti prve matrike: \ n", np_array1)
print ("\ nVrednosti druge matrike: \ n", np_array2)
# Ustvari novo matriko glede na pogoje
novo_niz = np.kjer ((np_array1 60), np_array1, np_array2)
# Natisnite novo matriko
print ("\ nFiltrirane vrednosti obeh nizov: \ n", new_array)

Izhod:

Naslednji izhod se bo prikazal po izvedbi zgornjega skripta. Stanje se je vrnilo Lažno za vse elemente. Vrnjena matrika torej vsebuje samo vrednosti iz druge matrike.

Primer-3: Uporaba več pogojev v večdimenzionalnem polju

Naslednji primer prikazuje, kako lahko funkcijo () uporabljamo z več pogoji, ki jih definira logika IN ki bo uporabljen v dveh večdimenzionalnih nizih. Tu sta bila s pomočjo seznamov ustvarjena dva večdimenzionalna polja. Nato so te funkcije uporabljene v funkciji where () za ustvarjanje novega polja na podlagi pogoja. Vrnilo se bo stanje, uporabljeno v funkciji Prav pri čemer je vrednost prvega polja soda in vrednost drugega polja je neparna; v nasprotnem primeru se bo stanje vrnilo Lažno.

# Uvozi knjižnico NumPy
uvozi numpy kot np
# Ustvarite dva večdimenzionalna polja s celoštevilčnimi vrednostmi
np_array1 = np.matrika ([[5, 12, 21, 6, 11], [6, 10, 15, 31, 8]])
np_array2 = np.matrika ([[43, 19, 7, 34, 9], [99, 22, 41, 5, 12]])
# Natisnite vrednosti matrike
print ("\ nVrednosti prve matrike: \ n", np_array1)
print ("\ nVrednosti druge matrike: \ n", np_array2)
# Iz dveh nizov ustvari novo matriko glede na pogoje
novo_niz = np.kjer (((np_array1% 2 == 0) & (np_array2% 2 == 1)), np_array1, np_array2)
# Natisnite novo matriko
print ("\ nFiltrirane vrednosti obeh nizov: \ n", new_array)

Izhod:

Naslednji izhod se bo prikazal po izvedbi zgornjega skripta. V izhodu so v novo matriko iz druge matrike dodali 43, 12, 7, 34, 9, 22, 41, 5 in 12, ker je pogoj Lažno za te vrednosti. Prvih 12 vrednosti v novem polju je dodano iz prvega polja, ker je pogoj Prav samo za to vrednost.

Zaključek:

pri čemer je funkcija () knjižnice NumPy uporabna za filtriranje vrednosti iz dveh nizov. Ustvarjanje novega polja s filtriranjem podatkov iz dveh nizov na podlagi več pogojev, opredeljenih z logičnim ALI in logičnim AND, je bilo razloženo v tej vadnici. Upam, da bodo bralci lahko pravilno uporabili to funkcijo v svojem skriptu po vadbi primerov te vadnice.

Kako spremeniti levi in ​​desni gumb miške na računalniku z operacijskim sistemom Windows 10
Povsem normalno je, da so vse naprave računalniške miške ergonomsko zasnovane za desničarje. Na voljo pa so miške, ki so posebej zasnovane za levičarj...
Posnemajte klike miške tako, da v Windows 10 lebdite z miško Clickless Mouse
Uporaba miške ali tipkovnice v napačni drži čezmerne uporabe lahko povzroči veliko zdravstvenih težav, vključno s sevom, sindromom karpalnega kanala i...
S temi brezplačnimi orodji dodajte gibe miške v sistem Windows 10
V zadnjih letih so se računalniki in operacijski sistemi močno razvili. Včasih so morali uporabniki uporabljati ukaze za krmarjenje po upraviteljih da...