Datavetenskap

Hur man använder python NumPy där () fungerar med flera förhållanden

Hur man använder python NumPy där () fungerar med flera förhållanden
NumPy-biblioteket har många funktioner för att skapa arrayen i python. där () -funktionen är en av dem för att skapa en array från en annan NumPy-array baserat på ett eller flera villkor. Vissa operationer kan göras vid tidpunkten för att skapa array baserat på tillståndet med hjälp av denna funktion. Den kan också användas utan något villkorligt uttryck. Hur denna funktion kan användas med flera förhållanden i python visas i denna handledning.

Syntax:

bedövad.där (villkor, [x, y])

där funktionen () kan ta två argument. Det första argumentet är obligatoriskt och det andra argumentet är valfritt. Om värdet av det första argumentet (tillstånd) är sant, då kommer utmatningen att innehålla arrayelementen från arrayen, x annars från matrisen, y. Den här funktionen returnerar indexvärdena för inmatningsmatrisen om inget valfritt argument används.

Användning av var () -funktionen:

Olika typer av booleska operatörer kan användas för att definiera tillståndet för denna funktion. Användningen av var en () -funktion med flera villkor visas i denna del av självstudien.

Exempel -1: Användning av flera villkor med logisk ELLER

Följande exempel visar användningen av var () -funktionen med och utan argumentet valfritt. Här har den logiska ELLER använt för att definiera villkoret. Den första där () -funktionen har tillämpats i en endimensionell matris som returnerar matris med index för ingångsmatrisen där villkoret kommer att returnera Sann. Den andra där () -funktionen har tillämpats i två endimensionella matriser kommer att hämta värdena från den första matrisen när villkoret returnerar True. I annat fall hämtar värdena från den andra matrisen.

# Importera NumPy-biblioteket
importera numpy som np
# Skapa en matris med hjälp av listan
np_array1 = np.array ([23, 11, 45, 43, 60, 18, 33, 71, 52, 38])
print ("Värdena för inmatningsmatrisen: \ n", np_array1)
# Skapa en annan array baserat på flera villkor och en array
new_array1 = np.där ((np_array1 50))
# Skriv ut den nya matrisen
print ("Arrayens filtrerade värden: \ n", new_array1)
# Skapa en matris med hjälp av intervallvärden
np_array2 = np.arange (40, 50)
# Skapa en annan matris baserat på flera villkor och två matriser
new_array2 = np.där ((np_array1 60), np_array1, np_array2)
# Skriv ut den nya matrisen
print ("De filtrerade värdena i arrayen: \ n", new_array2)

Produktion:

Följande utdata visas efter att ovanstående skript har körts. Här har tillståndet återvänt Sann för värdena 23,11,18,33 och 38 för den första matrisen. Villkoret har återvänt Falsk för värdena 45, 43, 60, 71 och 52. Så, 42, 43, 44 och 48 har lagts till från den andra matrisen för värdena 45, 43, 60 och 52. Här är 71 utom räckhåll.

Exempel -2: Användning av flera villkor med logisk AND

Följande exempel visar hur funktionen () kan användas med flera villkor definierade av logiska och tillämpas i två endimensionella matriser. Här har två endimensionella NumPy-matriser skapats med funktionen rand (). Dessa matriser har använts i funktionen var () med flera villkor för att skapa den nya matrisen baserat på villkoren. Villkoret återkommer Sann när den första matrisens värde är mindre än 40 och värdet för den andra matrisen är större än 60. Den nya matrisen har skrivits ut senare.

# Importera NumPy-biblioteket
importera numpy som np
# Skapa två matriser med slumpmässiga värden
np_array1 = np.slumpmässig.rand (10) * 100
np_array2 = np.slumpmässig.rand (10) * 100
# Skriv ut matrisvärdena
skriv ut ("\ nVärdena för den första matrisen: \ n", np_array1)
skriv ut ("\ nVärdena för den andra matrisen: \ n", np_array2)
# Skapa en ny matris baserat på villkoren
new_array = np.där ((np_array1 60), np_array1, np_array2)
# Skriv ut den nya matrisen
print ("\ nDe filtrerade värdena för båda matriserna: \ n", new_array)

Produktion:

Följande utdata visas efter att ovanstående skript har körts. Villkoret har återvänt Falsk för alla element. Så den returnerade matrisen innehåller endast värdena från den andra matrisen.

Exempel 3: Användning av flera villkor i den flerdimensionella matrisen

Följande exempel visar hur var () -funktionen kan användas med flera villkor definierade av logiska OCH som kommer att tillämpas i två flerdimensionella matriser. Här har två flerdimensionella matriser skapats med hjälp av listor. Därefter har dessa funktioner tillämpats i där () -funktionen för att skapa den nya matrisen baserat på villkoret. Det tillstånd som används i funktionen kommer att återgå Sann där värdet för den första matrisen är jämnt och värdet för den andra matrisen är udda; annars återgår villkoret Falsk.

# Importera NumPy-biblioteket
importera numpy som np
# Skapa två flerdimensionella matriser med heltalvärden
np_array1 = np.array ([[5, 12, 21, 6, 11], [6, 10, 15, 31, 8]])
np_array2 = np.array ([[43, 19, 7, 34, 9], [99, 22, 41, 5, 12]])
# Skriv ut matrisvärdena
skriv ut ("\ nVärdena för den första matrisen: \ n", np_array1)
skriv ut ("\ nVärdena för den andra matrisen: \ n", np_array2)
# Skapa en ny matris från två matriser baserat på villkoren
new_array = np.där ((((np_array1% 2 == 0) & (np_array2% 2 == 1)), np_array1, np_array2)
# Skriv ut den nya matrisen
print ("\ nDe filtrerade värdena för båda matriserna: \ n", new_array)

Produktion:

Följande utdata visas efter att ovanstående skript har körts. I utgången har 43, 12, 7, 34, 9, 22, 41, 5 och 12 lagt till den nya gruppen från den andra gruppen eftersom villkoret är Falsk för dessa värden. Det första 12-värdet i den nya matrisen har lagts till från den första matrisen eftersom villkoret är Sann endast för detta värde.

Slutsats:

där funktionen () i NumPy-biblioteket är användbar för att filtrera värdena från två matriser. Skapa en ny matris genom att filtrera data från två matriser baserat på flera villkor definierade av logisk ELLER och logisk OCH har förklarats i denna handledning. Jag hoppas att läsarna kommer att kunna använda den här funktionen i sitt skript ordentligt efter att ha övat på exemplen i denna handledning.

Installera det senaste OpenRA-strategispelet på Ubuntu Linux
OpenRA är en Libre / Free Real Time Strategy-spelmotor som återskapar de tidiga Westwood-spelen som det klassiska Command & Conquer: Red Alert. Distri...
Installera senaste Dolphin Emulator för Gamecube & Wii på Linux
Dolphin Emulator låter dig spela dina valda Gamecube & Wii-spel på Linux Personal Computers (PC). Eftersom Dolphin Emulator är en fritt tillgänglig o...
Hur man använder GameConqueror Cheat Engine i Linux
Artikeln täcker en guide om hur du använder GameConqueror-fuskmotorn i Linux. Många användare som spelar spel på Windows använder ofta applikationen "...