Basis Wiskundige Bewerkingen
Nu je bekend bent met het concept van broadcasting, laten we enkele basis wiskundige bewerkingen in NumPy bespreken.
Scalaire Operaties
Vergeet niet, broadcasting stelt je in staat om wiskundige bewerkingen uit te voeren tussen twee arrays van compatibele vormen of tussen een array en een scalaire.
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}')
Zoals je kunt zien, wordt elke bewerking element-gewijs uitgevoerd op de array. In wezen wordt een scalar 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 uitgevoerd, en opnieuw wordt een bewerking element-gewijs uitgevoerd:
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}')
Deling, aftrekking en andere rekenkundige bewerkingen werken op een vergelijkbare manier. Hier is een ander voorbeeld waarbij de tweede (rechter) array wordt uitgezonden:
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
wordt uitgezonden 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. Bovendien worden deze bewerkingen veel gebruikt in wetenschappelijk rekenen en datagestuurde toepassingen.
Swipe to start coding
Je analyseert de kwartaalverkoop gegevens voor twee producten in 2021 en 2022, opgeslagen in twee 2D-arrays:
sales_data_2021
: kwartaalverkoop voor elk product in 2021, waarbij elke rij een specifiek product vertegenwoordigt;sales_data_2022
: kwartaalverkoop voor elk product in 2022, waarbij elke rij een specifiek product vertegenwoordigt.
Bereken de kwartaalomzetgroei voor elk product in procenten.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 3.7
Basis Wiskundige Bewerkingen
Veeg om het menu te tonen
Nu je bekend bent met het concept van broadcasting, laten we enkele basis wiskundige bewerkingen in NumPy bespreken.
Scalaire Operaties
Vergeet niet, broadcasting stelt je in staat om wiskundige bewerkingen uit te voeren tussen twee arrays van compatibele vormen of tussen een array en een scalaire.
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}')
Zoals je kunt zien, wordt elke bewerking element-gewijs uitgevoerd op de array. In wezen wordt een scalar 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 uitgevoerd, en opnieuw wordt een bewerking element-gewijs uitgevoerd:
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}')
Deling, aftrekking en andere rekenkundige bewerkingen werken op een vergelijkbare manier. Hier is een ander voorbeeld waarbij de tweede (rechter) array wordt uitgezonden:
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
wordt uitgezonden 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. Bovendien worden deze bewerkingen veel gebruikt in wetenschappelijk rekenen en datagestuurde toepassingen.
Swipe to start coding
Je analyseert de kwartaalverkoop gegevens voor twee producten in 2021 en 2022, opgeslagen in twee 2D-arrays:
sales_data_2021
: kwartaalverkoop voor elk product in 2021, waarbij elke rij een specifiek product vertegenwoordigt;sales_data_2022
: kwartaalverkoop voor elk product in 2022, waarbij elke rij een specifiek product vertegenwoordigt.
Bereken de kwartaalomzetgroei voor elk product in procenten.
Oplossing
Bedankt voor je feedback!
Awesome!
Completion rate improved to 3.7single