単純な算術
単純な算術
NumPy配列間で直接算術演算子を使用することもできます+
-
*
/
が、このセクションでは、リストやタプルなどの配列のようなオブジェクトを取得して条件付きで算術を実行できる関数がある場合の、その拡張について説明します。
条件付き算術:算術演算が発生する条件を定義できることを意味します。
説明したすべての算術関数は、where
その条件を指定できるパラメーターを取ります。
添加
このadd()
関数は、2つの配列の内容を合計し、結果を新しい配列で返します。
例
arr1の値をarr2の値に追加します。
import numpy as np
arr1 = np.array([10, 11, 12, 13, 14, 15])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.add(arr1, arr2)
print(newarr)
上記の例では、[30 32 34 36 38 40]が返されます。これは、10 + 20、11 + 21、12 +22などの合計です。
減算
このsubtract()
関数は、ある配列の値を別の配列の値で減算し、結果を新しい配列に返します。
例
arr1の値からarr2の値を引きます。
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.subtract(arr1, arr2)
print(newarr)
上記の例では、[-10 -1 8 17 26 35]が返されます。これは、10-20、20-21、30-22などの結果です。
乗算
このmultiply()
関数は、ある配列の値を別の配列の値と乗算し、その結果を新しい配列に返します。
例
arr1の値にarr2の値を掛けます。
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.multiply(arr1, arr2)
print(newarr)
上記の例では、[200 420 660 920 1200 1500]が返されます。これは、10 * 20、20 * 21、30 * 22などの結果です。
分割
このdivide()
関数は、ある配列の値を別の配列の値で除算し、結果を新しい配列に返します。
例
arr1の値をarr2の値で除算します。
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3,
5, 10, 8, 2, 33])
newarr = np.divide(arr1, arr2)
print(newarr)
上記の例では、[3.33333333 4. 3. 5. 25. 1.81818182]が返されます。これは、10 / 3、20 / 5、30 / 10などの結果です。
力
このpower()
関数は、最初の配列の値を2番目の配列の値の累乗に累乗し、結果を新しい配列に返します。
例
arr1の値をarr2の値の累乗に上げます。
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3,
5, 6, 8, 2, 33])
newarr = np.power(arr1, arr2)
print(newarr)
上記の例では、[1000 3200000 729000000 6553600000000 2500 0]が返されます。これは、10 * 10 * 10、20 * 20 * 20 * 20 * 20、30 * 30 * 30 * 30 * 30 * 30などの結果です。
残り
mod()
関数と関数はどちらもremainder()
、2番目の配列の値に対応する最初の配列の残りの値を返し、結果を新しい配列に返します。
例
余りを返します:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.mod(arr1, arr2)
print(newarr)
上記の例では、[1 6 3 0 0 27]が返されます。これは、10を3(10%3)、20を7(20%7)、30を9(30%9)などで割ったときの余りです。
remainder()
関数を使用しても同じ結果が得られます。
例
余りを返します:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.remainder(arr1, arr2)
print(newarr)
商とMod
このdivmod()
関数は、商とmodの両方を返します。戻り値は2つの配列で、最初の配列には商が含まれ、2番目の配列にはmodが含まれます。
例
商とmodを返します。
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.divmod(arr1, arr2)
print(newarr)
上記の例では、次のようになります。
(array([3、2、3、5、25、1])、array([1、6、3、0、0、27]))
最初の配列は商を表します( 10を3で割ったときの整数値、20を7で割ったとき、30を9で割ったときなど
。2番目の配列は、同じ除算の余りを表します。
絶対値
absolute()
関数とabs()
関数の両方が要素ごとに同じ絶対操作を実行しますがabsolute()
、Pythonの組み込み関数との混同を避けるために使用する必要がありますmath.abs()
例
商とmodを返します。
import numpy as np
arr = np.array([-1, -2, 1, 2, 3, -4])
newarr = np.absolute(arr)
print(newarr)
上記の例では、[1 2 1 2 34]が返されます。