Pythonのアインシュタインの縮約記法で行列のトレースを取得する
einsum()メソッドは、オペランドのアインシュタインの縮約記法を評価します。アインシュタインの縮約記法を使用すると、多くの一般的な多次元線形代数配列演算を簡単な方法で表すことができます。暗黙モードでは、einsumはこれらの値を計算します。
明示的モードでは、einsumは、指定された添え字ラベルに対して合計を無効にするか、強制することにより、従来のEinstein合計操作とは見なされない可能性のある他の配列操作を計算するためのさらなる柔軟性を提供します。
アインシュタインの縮約記法を使用して行列のトレースを取得するには、Pythonでnumpy.einsum()メソッドを使用します。最初のパラメーターは添え字です。これは、合計の添え字を添え字ラベルの連結リストとして指定します。 2番目のパラメーターはオペランドです。これらは操作用の配列です。
ステップ
まず、必要なライブラリをインポートします-
import numpy as np
arange()およびreshape()メソッドを使用してnumpy配列を作成する-
arr = np.arange(16).reshape(4,4)
配列を表示する-
print("Our Array...\n",arr)
寸法を確認してください-
print("\nDimensions of our Array...\n",arr.ndim)
データ型を取得-
print("\nDatatype of our Array object...\n",arr.dtype)
形をとる-
print("\nShape of our Array object...\n",arr.shape)
アインシュタインの縮約記法を使用して行列のトレースを取得するには、Pythonでnumpy.einsum()メソッドを使用します-
print("\nResult (trace)...\n",np.einsum('ii', arr))
例
import numpy as np # Creating a numpy array using the arange() and reshape() method arr = np.arange(16).reshape(4,4) # Display the array print("Our Array...\n",arr) # Check the Dimensions print("\nDimensions of our Array...\n",arr.ndim) # Get the Datatype print("\nDatatype of our Array object...\n",arr.dtype) # Get the Shape print("\nShape of our Array object...\n",arr.shape) # To get the trace of a matrix with Einstein summation convention, use the numpy.einsum() method in Python. print("\nResult (trace)...\n",np.einsum('ii', arr))
出力
Our Array... [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]] Dimensions of our Array... 2 Datatype of our Array object... int64 Shape of our Array object... (4, 4) Result (trace)... 30
-
Pythonでmatrix()を使用して行列オブジェクトの逆数を計算します
matrix()を使用して行列オブジェクトの逆数を計算するには、Pythonでnumpy.linalg.inv()メソッドを使用します。正方行列aが与えられた場合、dot(a、ainv)=dot(ainv、a)=eye(a.shape [0])。を満たす行列ainvを返します。 このメソッドは、行列aの(乗法)逆行列を返します。最初のパラメーターaは、反転される行列です。 ステップ まず、必要なライブラリをインポートします- import numpy as np from numpy.linalg import invをインポートします 配列を作成する- arr = np.array([
-
Pythonで行列の逆数を計算する
行列の(乗法)逆数を計算するには、Pythonでnumpy.linalg.inv()メソッドを使用します。正方行列aが与えられた場合、行列 ainvを返します。 dot(a、ainv)=dot(ainv、a)=eye(a.shape [0])を満たす。このメソッドは、行列aの(乗法)逆行列を返します。最初のパラメーターaは、反転される行列です。 ステップ まず、必要なライブラリをインポートします- import numpy as np from numpy.linalg import invをインポートします 配列を作成する- arr = np.array([[ 5, 10], [ 15,