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

Pythonの特異値分解メソッドを使用して配列の行列ランクを返します


特異値分解メソッドを使用して配列の行列ランクを返すには、Pythonでnumpy.linalg.matrix_rank()メソッドを使用します。配列のランクは、tolより大きい配列の特異値の数です。最初のパラメーターAは、入力ベクトルまたは行列のスタックです。

2番目のパラメーターtolは、SVD値がゼロと見なされるしきい値です。 tolがNoneで、SがMの特異値を持つ配列であり、epsがSのデータ型のイプシロン値である場合、tolはS.max()* max(M、N)*epsに設定されます。 3番目のパラメーターであるエルミート。Trueの場合、Aはエルミートであると見なされ、特異値を見つけるためのより効率的な方法が可能になります。デフォルトはFalseです。

ステップ

まず、必要なライブラリをインポートします-

import numpy as np
from numpy.linalg import matrix_rank
をインポートします

配列を作成する-

arr = np.eye(5)

配列を表示する-

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.linalg.matrix_rank()メソッドを使用します-

print("\nResult (rank)...\n",matrix_rank(arr))

import numpy as np
from numpy.linalg import matrix_rank

# Create an array
arr = np.eye(5)

# 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 Return matrix rank of array using Singular Value Decomposition method, use the numpy.linalg.matrix_rank() method in Python
print("\nResult (rank)...\n",matrix_rank(arr))

出力

Our Array...
[[1. 0. 0. 0. 0.]
[0. 1. 0. 0. 0.]
[0. 0. 1. 0. 0.]
[0. 0. 0. 1. 0.]
[0. 0. 0. 0. 1.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Shape of our Array object...
(5, 5)

Result (rank)...
5

  1. map()関数を使用してPythonで2D配列を合計する

    このチュートリアルでは、マップを使用して2D配列の合計を求めます。 Pythonで機能します。 マップ 関数は2つの引数を取ります。つまり、関数 および反復可能 。 iterableのすべての要素を関数に渡し、結果をマップオブジェクトに格納します。 。マップオブジェクトを反復可能に変換できます。 map関数を使用して2D配列の合計を見つける方法を見てみましょう。 リストを使用して2Dアレイを初期化します。 関数sumを渡します および2Dアレイ マップへ 機能。 結果のマップの合計を求めます オブジェクトを作成して印刷します。 例 以下のコードを参照してください。

  2. Pythonで2DMatrixIIを検索する

    1つのmxn行列があるとします。その行列の値を検索する効率的なアルゴリズムを作成する必要があります。この行列には次のプロパティがあります- 各行の整数は、左から右に昇順で並べ替えられます。 各列の整数は、上から下に昇順で並べ替えられます。 したがって、行列が-のような場合 1 4 7 11 15 2 5 8 12 19 3 6 9 16 22 10 13 14 17 24 18 21 23 26 30 ターゲットが5の場合はtrueを返し、ターゲットが20の場