Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Grunnleggende Matematiske Operasjoner | Matematikk med NumPy
Ultimate NumPy

bookGrunnleggende 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.

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

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:

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

Divisjon, subtraksjon og andre aritmetiske operasjoner fungerer på lignende måte. Her er et annet eksempel hvor andre (høyre) array blir broadcastet:

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 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.

Oppgave

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

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 2
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

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?

close

Awesome!

Completion rate improved to 3.7

bookGrunnleggende 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.

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

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:

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

Divisjon, subtraksjon og andre aritmetiske operasjoner fungerer på lignende måte. Her er et annet eksempel hvor andre (høyre) array blir broadcastet:

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 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.

Oppgave

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

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 2
single

single

some-alt