Grundläggande Matematiska Operationer
Nu när du är bekant med konceptet broadcasting, låt oss diskutera några grundläggande matematiska operationer i NumPy.
Skalära operationer
Kom ihåg att broadcasting gör det möjligt att utföra matematiska operationer mellan två arrayer med kompatibla former eller mellan en array och en skalar.
1234567891011import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
Som du kan se utförs varje operation elementvis på arrayen. I princip broadcastas en skalär till en array med samma form som vår ursprungliga array, där alla element är samma tal. Därför utförs operationen på varje par av motsvarande element i de två arrayerna.
Operationer mellan två arrayer
Om formerna på två arrayer är kompatibla utförs broadcasting vid behov, och återigen utförs en operation elementvis:
123456789101112import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
Division, subtraktion och andra aritmetiska operationer fungerar på liknande sätt. Här är ett annat exempel där den andra (högra) arrayen sänds ut (broadcast):
123456789101112import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
arr_2 sänds ut (broadcast) till en 2D-array med två identiska rader, där varje rad innehåller arrayen [5, 6, 7].
Tillämpningar
Sådana matematiska operationer är avgörande för uppgifter som skalning, normalisering och transformering av data inom maskininlärning och statistisk analys. De möjliggör effektiva elementvisa operationer för att kombinera dataset, utföra numeriska simuleringar och applicera filter inom bild- och signalbehandling. Dessutom används dessa operationer i stor utsträckning inom vetenskaplig beräkning och datadrivna applikationer.
Swipe to start coding
Du analyserar kvartalsvisa försäljningsdata för två produkter under 2021 och 2022, lagrade i två 2D-arrayer:
sales_data_2021: kvartalsvis försäljning för varje produkt under 2021, där varje rad representerar en specifik produkt;sales_data_2022: kvartalsvis försäljning för varje produkt under 2022, där varje rad representerar en specifik produkt.
Beräkna kvartalsvis intäktstillväxt för varje produkt i procent med hjälp av formeln:
Revenue=S2021S2022−S2021∗100%Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Fantastiskt!
Completion betyg förbättrat till 3.85
Grundläggande Matematiska Operationer
Svep för att visa menyn
Nu när du är bekant med konceptet broadcasting, låt oss diskutera några grundläggande matematiska operationer i NumPy.
Skalära operationer
Kom ihåg att broadcasting gör det möjligt att utföra matematiska operationer mellan två arrayer med kompatibla former eller mellan en array och en skalar.
1234567891011import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
Som du kan se utförs varje operation elementvis på arrayen. I princip broadcastas en skalär till en array med samma form som vår ursprungliga array, där alla element är samma tal. Därför utförs operationen på varje par av motsvarande element i de två arrayerna.
Operationer mellan två arrayer
Om formerna på två arrayer är kompatibla utförs broadcasting vid behov, och återigen utförs en operation elementvis:
123456789101112import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
Division, subtraktion och andra aritmetiska operationer fungerar på liknande sätt. Här är ett annat exempel där den andra (högra) arrayen sänds ut (broadcast):
123456789101112import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
arr_2 sänds ut (broadcast) till en 2D-array med två identiska rader, där varje rad innehåller arrayen [5, 6, 7].
Tillämpningar
Sådana matematiska operationer är avgörande för uppgifter som skalning, normalisering och transformering av data inom maskininlärning och statistisk analys. De möjliggör effektiva elementvisa operationer för att kombinera dataset, utföra numeriska simuleringar och applicera filter inom bild- och signalbehandling. Dessutom används dessa operationer i stor utsträckning inom vetenskaplig beräkning och datadrivna applikationer.
Swipe to start coding
Du analyserar kvartalsvisa försäljningsdata för två produkter under 2021 och 2022, lagrade i två 2D-arrayer:
sales_data_2021: kvartalsvis försäljning för varje produkt under 2021, där varje rad representerar en specifik produkt;sales_data_2022: kvartalsvis försäljning för varje produkt under 2022, där varje rad representerar en specifik produkt.
Beräkna kvartalsvis intäktstillväxt för varje produkt i procent med hjälp av formeln:
Revenue=S2021S2022−S2021∗100%Lösning
Tack för dina kommentarer!
single