Grunnleggende Matematiske Operasjoner
Nå som du er kjent med konseptet broadcasting, la oss se nærmere på noen grunnleggende matematiske operasjoner i NumPy.
Skalaroperasjoner
Husk at broadcasting gjør det mulig å utføre matematiske operasjoner mellom to arrayer med kompatible former eller mellom en array og 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øres hver operasjon elementvis på arrayet. I hovedsak blir en skalar broadcastet til et array med samme form som vårt opprinnelige array, der alle elementene har samme verdi. Derfor utføres operasjonen på hvert par av tilsvarende elementer i de to arrayene.
Operasjoner mellom to arrayer
Hvis formene til to arrayer er kompatible, utføres broadcasting om nødvendig, og igjen utføres en operasjon 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}')
Divisjon, subtraksjon og andre aritmetiske operasjoner fungerer på lignende måte. Her er et annet eksempel hvor andre (høyre) array blir broadcastet:
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 blir broadcastet til et 2D-array med to identiske rader, hver med arrayet [5, 6, 7].
Bruksområder
Slike matematiske operasjoner er essensielle for oppgaver som skalering, normalisering og transformasjon av data innen maskinlæring og statistisk analyse. De muliggjør effektive elementvise operasjoner for å kombinere datasett, utføre numeriske simuleringer og anvende filtre i bilde- og signalbehandling. I tillegg er disse operasjonene mye brukt innen vitenskapelig databehandling og datadrevne applikasjoner.
Swipe to start coding
Du analyserer kvartalsvise salgstall for to produkter i 2021 og 2022, lagret i to 2D-arrays:
sales_data_2021: kvartalsvise salgstall for hvert produkt i 2021, der hver rad representerer et spesifikt produkt;sales_data_2022: kvartalsvise salgstall for hvert produkt i 2022, der hver rad representerer et spesifikt produkt.
Beregn kvartalsvis inntektsvekst for hvert produkt i prosent.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Can you explain more about how broadcasting works with arrays of different shapes?
What happens if the shapes of the arrays are not compatible for broadcasting?
Can you give more real-world examples where broadcasting is useful?
Awesome!
Completion rate improved to 3.7
Grunnleggende Matematiske Operasjoner
Sveip for å vise menyen
Nå som du er kjent med konseptet broadcasting, la oss se nærmere på noen grunnleggende matematiske operasjoner i NumPy.
Skalaroperasjoner
Husk at broadcasting gjør det mulig å utføre matematiske operasjoner mellom to arrayer med kompatible former eller mellom en array og 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øres hver operasjon elementvis på arrayet. I hovedsak blir en skalar broadcastet til et array med samme form som vårt opprinnelige array, der alle elementene har samme verdi. Derfor utføres operasjonen på hvert par av tilsvarende elementer i de to arrayene.
Operasjoner mellom to arrayer
Hvis formene til to arrayer er kompatible, utføres broadcasting om nødvendig, og igjen utføres en operasjon 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}')
Divisjon, subtraksjon og andre aritmetiske operasjoner fungerer på lignende måte. Her er et annet eksempel hvor andre (høyre) array blir broadcastet:
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 blir broadcastet til et 2D-array med to identiske rader, hver med arrayet [5, 6, 7].
Bruksområder
Slike matematiske operasjoner er essensielle for oppgaver som skalering, normalisering og transformasjon av data innen maskinlæring og statistisk analyse. De muliggjør effektive elementvise operasjoner for å kombinere datasett, utføre numeriske simuleringer og anvende filtre i bilde- og signalbehandling. I tillegg er disse operasjonene mye brukt innen vitenskapelig databehandling og datadrevne applikasjoner.
Swipe to start coding
Du analyserer kvartalsvise salgstall for to produkter i 2021 og 2022, lagret i to 2D-arrays:
sales_data_2021: kvartalsvise salgstall for hvert produkt i 2021, der hver rad representerer et spesifikt produkt;sales_data_2022: kvartalsvise salgstall for hvert produkt i 2022, der hver rad representerer et spesifikt produkt.
Beregn kvartalsvis inntektsvekst for hvert produkt i prosent.
Løsning
Takk for tilbakemeldingene dine!
single