Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonでのNumPy配列を使用したブロードキャスト


アレイのサイズが同じで、特定のサイズが必要な場合、異なるアレイ間の算術演算が毎月行われることがわかっています。ただし、サイズが等しくない場合でも、形状に「1」が前に付いた小さいndimを配列に入力して配列のいずれかを拡張することにより、それらに算術演算を適用できるシナリオがあります。つまり、基本的にブロードキャストとアレイとは、その形状を必要な形状に変更することを意味します。

配列Boradcastingのルール

  • ndimが他の配列よりも小さい配列には、その形状に「1」が付加されます。

  • 出力形状の各次元のサイズは、その次元の入力サイズの最大値です。

  • 特定の次元のサイズが出力サイズと一致するか、値が正確に1である場合、入力を計算に使用できます。

  • 入力のディメンションサイズが1の場合、そのディメンションの最初のデータエントリが、そのディメンションに沿ったすべての計算に使用されます。

次の例は、numpy配列を使用した配列操作中にブロードキャストがどのように行われるかを示しています。

import numpy as np
a = np.array([[0.0,0.0,0.0],[10.0,10.0,10.0],[20.0,20.0,20.0],[30.0,30.0,30.0]])
b = np.array([1.0,2.0,3.0])

print 'First array:'
print a
print '\n'

print 'Second array:'
print b
print '\n'

print 'First Array + Second Array'
print a + b

出力

上記のコードを実行すると、次の結果が得られます-

First array:
[
   [ 0. 0. 0.]
   [ 10. 10. 10.]
   [ 20. 20. 20.]
   [ 30. 30. 30.]
]

Second array:
[ 1. 2. 3.]

First Array + Second Array
[
   [ 1. 2. 3.]
   [ 11. 12. 13.]
   [ 21. 22. 23.]
   [ 31. 32. 33.]
]

  1. 配列—Pythonでの数値の効率的な配列

    配列は、C / C ++、Javaなどで非常に一般的なデータ構造です。これらの言語では、配列は、類似したデータ型の複数の要素のコレクションとして定義されます。 Pythonには、配列に相当するものは組み込まれていません。リストとタプルは要素のコレクションですが、タイプが異なる場合があります。 Pythonの配列モジュールはC型配列をエミュレートします。モジュールは「配列」クラスを定義します。次のコンストラクターは配列オブジェクトを作成します: array(typecode, initializer) typecode引数は、配列のタイプを決定します。イニシャライザーは、一致するタイプのすべ

  2. 例を含むBash配列

    配列は要素のコレクションです。 Bashでは、配列にさまざまなタイプの要素を混在させることができます。文字列と数字。 このチュートリアルでは、Bashで配列を作成して使用する方法について説明します。また、ループ、印刷、サイズの取得、コンテンツの変更などの配列操作についても説明します。 Bashで配列を作成する方法 Bash配列を作成する方法は2つあります。 宣言キーワードの使用 declare -a my_bash_array これにより、「my_bash_array」という名前のインデックス付き配列が作成されます。 アレイの初期化 代入演算子=を使用して、その場で配列を作成および初