NumPy 置換値

Muhammad Maisam Abbas 2023年1月30日
  1. NumPy は値を numpy.clip() 関数に置き換える
  2. NumPy は値を numpy.minimum() および numpy.maximum() 関数に置き換える
  3. NumPy は Python の配列インデックスメソッドで値を置き換える
NumPy 置換値

このチュートリアルでは、Python で NumPy 配列内の値を置き換える方法を紹介します。

NumPy は値を numpy.clip() 関数に置き換える

NumPy 配列の特定のしきい値よりも大きい値をすべて置き換える必要がある場合は、numpy.clip() 関数を使用できます。numpy.clip() 関数を使用して、配列の上限と下限を指定できます。numpy.clip() 関数は、指定された制限未満の要素が下限に置き換えられた配列を返します。指定された制限より大きい要素は、最大の制限に置き換えられます。次のコード例は、NumPy 配列内の値を numpy.clip() 関数で置き換える方法を示しています。

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

result = np.clip(array, 0, 5)
print(result)

出力:

[1 2 3 4 5 5 5 5 5 5 5 5]

上記のコードでは、NumPy 配列 array 内の 5 より大きい値を np.clip() 関数に置き換えました。最初に、np.array() 関数を使用して NumPy 配列を作成しました。次に、np.clip() 関数内で 0 から 5 までの制限を指定して配列をクリップし、結果を result 配列内に保存しました。

NumPy は値を numpy.minimum() および numpy.maximum() 関数に置き換える

numpy.minimum() および numpy.maximum() 関数を使用して、指定した制限外の配列の値を置き換えることもできます。numpy.maximum() 関数は、下限未満の値を下限に置き換えるために使用されます。また、numpy.minimum() 関数を使用して、上限より大きい値を上限に置き換えます。numpy.maximum() 関数は、配列と可能な限り低い値を入力パラメーターとして受け取ります。numpy.minimum() 関数は、配列と可能な最大値を入力パラメーターとして受け取ります。次のコード例を参照してください。

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

result1 = np.minimum(array, 5)

result2 = np.maximum(result1, 0)
print(result2)

出力:

[1 2 3 4 5 5 5 5 5 5 5 5]

np.minimum() 関数を使用して 5 より大きい値を 5 に置き換え、np.maximum() 関数を使用して 0 より小さい値を 0 に置き換えました。これらの操作の結果を result2 配列内に保存しました。

NumPy は Python の配列インデックスメソッドで値を置き換える

前の 2つの方法と同じ目標を達成する最も簡単な方法は、Python で配列のインデックスを使用することです。特定のしきい値よりも大きい値または小さい値は、NumPy の配列インデックスメソッドに簡単に置き換えることができます。このメソッドは、前の 2つのメソッドのように新しい配列を作成するのではなく、元の配列の内容を変更しました。

import numpy as np

array = np.array([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 9])

array[array > 5] = 5
print(array)

出力:

[1 2 3 4 5 5 5 5 5 5 5 5]

Python で array[array > 5] = 5 を使用して、5 より大きい array 内のすべての値を 5 に置き換えました。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn