Perusmatemaattiset Operaatiot
Nyt kun tunnet broadcasting-käsitteen, tarkastellaan joitakin perusmatemaattisia operaatioita NumPy-kirjastossa.
Skalaariset operaatiot
Muista, että broadcasting mahdollistaa matemaattisten operaatioiden suorittamisen kahden yhteensopivan muotoisen taulukon välillä tai taulukon ja skalaarin välillä.
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}')
Kuten huomaat, jokainen operaatio suoritetaan alkiokohtaisesti taulukolle. Käytännössä skalaari lähetetään (broadcast) taulukkoon, jonka muoto on sama kuin alkuperäisen array-taulukon, ja kaikki alkiot ovat samaa arvoa. Näin ollen operaatio suoritetaan jokaiselle kahden taulukon vastaavalle alkioparille.
Operaatioita kahden taulukon välillä
Jos kahden taulukon muodot ovat yhteensopivia, suoritetaan tarvittaessa lähetys (broadcasting), ja jälleen kerran operaatio suoritetaan alkiokohtaisesti:
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}')
Jakolasku, vähennyslasku ja muut aritmeettiset operaatiot toimivat samalla tavalla. Tässä on toinen esimerkki, jossa toinen (oikeanpuoleinen) taulukko lähetetään (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 lähetetään (broadcast) kaksiulotteiseksi taulukoksi, jossa on kaksi identtistä riviä, joista jokainen sisältää taulukon [5, 6, 7].
Sovellukset
Tällaiset matemaattiset operaatiot ovat olennaisia tehtävissä, kuten datan skaalaus, normalisointi ja muuntaminen koneoppimisessa ja tilastollisessa analyysissä. Ne mahdollistavat tehokkaat alkiokohtaiset operaatiot aineistojen yhdistämiseen, numeeristen simulointien suorittamiseen sekä suodattimien soveltamiseen kuva- ja signaalinkäsittelyssä. Lisäksi näitä operaatioita käytetään laajasti tieteellisessä laskennassa ja dataohjautuvissa sovelluksissa.
Swipe to start coding
Analysoit neljännesvuosittaista myyntidata kahdelle tuotteelle vuosina 2021 ja 2022, jotka on tallennettu kahteen 2D-taulukkoon:
sales_data_2021: tuotteiden neljännesvuosittaiset myyntiluvut vuonna 2021, jokainen rivi edustaa tiettyä tuotetta;sales_data_2022: tuotteiden neljännesvuosittaiset myyntiluvut vuonna 2022, jokainen rivi edustaa tiettyä tuotetta.
Laske neljännesvuosittainen liikevaihdon kasvu jokaiselle tuotteelle prosentteina käyttämällä kaavaa:
Revenue=S2021S2022−S2021∗100%Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Mahtavaa!
Completion arvosana parantunut arvoon 3.85
Perusmatemaattiset Operaatiot
Pyyhkäise näyttääksesi valikon
Nyt kun tunnet broadcasting-käsitteen, tarkastellaan joitakin perusmatemaattisia operaatioita NumPy-kirjastossa.
Skalaariset operaatiot
Muista, että broadcasting mahdollistaa matemaattisten operaatioiden suorittamisen kahden yhteensopivan muotoisen taulukon välillä tai taulukon ja skalaarin välillä.
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}')
Kuten huomaat, jokainen operaatio suoritetaan alkiokohtaisesti taulukolle. Käytännössä skalaari lähetetään (broadcast) taulukkoon, jonka muoto on sama kuin alkuperäisen array-taulukon, ja kaikki alkiot ovat samaa arvoa. Näin ollen operaatio suoritetaan jokaiselle kahden taulukon vastaavalle alkioparille.
Operaatioita kahden taulukon välillä
Jos kahden taulukon muodot ovat yhteensopivia, suoritetaan tarvittaessa lähetys (broadcasting), ja jälleen kerran operaatio suoritetaan alkiokohtaisesti:
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}')
Jakolasku, vähennyslasku ja muut aritmeettiset operaatiot toimivat samalla tavalla. Tässä on toinen esimerkki, jossa toinen (oikeanpuoleinen) taulukko lähetetään (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 lähetetään (broadcast) kaksiulotteiseksi taulukoksi, jossa on kaksi identtistä riviä, joista jokainen sisältää taulukon [5, 6, 7].
Sovellukset
Tällaiset matemaattiset operaatiot ovat olennaisia tehtävissä, kuten datan skaalaus, normalisointi ja muuntaminen koneoppimisessa ja tilastollisessa analyysissä. Ne mahdollistavat tehokkaat alkiokohtaiset operaatiot aineistojen yhdistämiseen, numeeristen simulointien suorittamiseen sekä suodattimien soveltamiseen kuva- ja signaalinkäsittelyssä. Lisäksi näitä operaatioita käytetään laajasti tieteellisessä laskennassa ja dataohjautuvissa sovelluksissa.
Swipe to start coding
Analysoit neljännesvuosittaista myyntidata kahdelle tuotteelle vuosina 2021 ja 2022, jotka on tallennettu kahteen 2D-taulukkoon:
sales_data_2021: tuotteiden neljännesvuosittaiset myyntiluvut vuonna 2021, jokainen rivi edustaa tiettyä tuotetta;sales_data_2022: tuotteiden neljännesvuosittaiset myyntiluvut vuonna 2022, jokainen rivi edustaa tiettyä tuotetta.
Laske neljännesvuosittainen liikevaihdon kasvu jokaiselle tuotteelle prosentteina käyttämällä kaavaa:
Revenue=S2021S2022−S2021∗100%Ratkaisu
Kiitos palautteestasi!
single