Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Basis Wiskundige Bewerkingen | Wiskunde met NumPy
Ultieme NumPy

bookBasis Wiskundige Bewerkingen

Nu je bekend bent met het concept broadcasting, bespreken we enkele basis wiskundige bewerkingen in NumPy.

Scalaire bewerkingen

Onthoud dat broadcasting het mogelijk maakt om wiskundige bewerkingen uit te voeren tussen twee arrays met compatibele vormen of tussen een array en een scalaire waarde.

1234567891011
import 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}')
copy

Zoals te zien is, wordt elke bewerking elementgewijs uitgevoerd op de array. In feite wordt een scalair uitgezonden naar een array met dezelfde vorm als onze oorspronkelijke array, waarbij alle elementen hetzelfde getal zijn. Daarom wordt de bewerking uitgevoerd op elk paar van overeenkomende elementen van de twee arrays.

Bewerkingen tussen twee arrays

Als de vormen van twee arrays compatibel zijn, wordt indien nodig broadcasting toegepast, en opnieuw wordt een bewerking elementgewijs uitgevoerd:

123456789101112
import 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}')
copy

Deling, aftrekking en andere rekenkundige bewerkingen werken op vergelijkbare wijze. Hier is een ander voorbeeld waarbij de tweede (rechter) array wordt gebroadcast:

123456789101112
import 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}')
copy

arr_2 wordt gebroadcast naar een 2D-array met twee identieke rijen, elk met de array [5, 6, 7].

Toepassingen

Dergelijke wiskundige bewerkingen zijn essentieel voor taken zoals schalen, normaliseren en transformeren van gegevens in machine learning en statistische analyse. Ze maken efficiënte elementgewijze bewerkingen mogelijk voor het combineren van datasets, uitvoeren van numerieke simulaties en toepassen van filters in beeld- en signaalverwerking. Daarnaast worden deze bewerkingen veel gebruikt in wetenschappelijke computing en data-gedreven toepassingen.

Taak

Swipe to start coding

Je analyseert de kwartaalomzet-gegevens voor twee producten in 2021 en 2022, opgeslagen in twee 2D-arrays:

  • sales_data_2021: kwartaalomzet voor elk product in 2021, waarbij elke rij een specifiek product vertegenwoordigt;
  • sales_data_2022: kwartaalomzet voor elk product in 2022, waarbij elke rij een specifiek product vertegenwoordigt.

Bereken de kwartaalomzetgroei voor elk product in procenten.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 2
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

close

Awesome!

Completion rate improved to 3.7

bookBasis Wiskundige Bewerkingen

Veeg om het menu te tonen

Nu je bekend bent met het concept broadcasting, bespreken we enkele basis wiskundige bewerkingen in NumPy.

Scalaire bewerkingen

Onthoud dat broadcasting het mogelijk maakt om wiskundige bewerkingen uit te voeren tussen twee arrays met compatibele vormen of tussen een array en een scalaire waarde.

1234567891011
import 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}')
copy

Zoals te zien is, wordt elke bewerking elementgewijs uitgevoerd op de array. In feite wordt een scalair uitgezonden naar een array met dezelfde vorm als onze oorspronkelijke array, waarbij alle elementen hetzelfde getal zijn. Daarom wordt de bewerking uitgevoerd op elk paar van overeenkomende elementen van de twee arrays.

Bewerkingen tussen twee arrays

Als de vormen van twee arrays compatibel zijn, wordt indien nodig broadcasting toegepast, en opnieuw wordt een bewerking elementgewijs uitgevoerd:

123456789101112
import 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}')
copy

Deling, aftrekking en andere rekenkundige bewerkingen werken op vergelijkbare wijze. Hier is een ander voorbeeld waarbij de tweede (rechter) array wordt gebroadcast:

123456789101112
import 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}')
copy

arr_2 wordt gebroadcast naar een 2D-array met twee identieke rijen, elk met de array [5, 6, 7].

Toepassingen

Dergelijke wiskundige bewerkingen zijn essentieel voor taken zoals schalen, normaliseren en transformeren van gegevens in machine learning en statistische analyse. Ze maken efficiënte elementgewijze bewerkingen mogelijk voor het combineren van datasets, uitvoeren van numerieke simulaties en toepassen van filters in beeld- en signaalverwerking. Daarnaast worden deze bewerkingen veel gebruikt in wetenschappelijke computing en data-gedreven toepassingen.

Taak

Swipe to start coding

Je analyseert de kwartaalomzet-gegevens voor twee producten in 2021 en 2022, opgeslagen in twee 2D-arrays:

  • sales_data_2021: kwartaalomzet voor elk product in 2021, waarbij elke rij een specifiek product vertegenwoordigt;
  • sales_data_2022: kwartaalomzet voor elk product in 2022, waarbij elke rij een specifiek product vertegenwoordigt.

Bereken de kwartaalomzetgroei voor elk product in procenten.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 2
single

single

some-alt