注:NumPyはNumarrayの後継者であり,NumArrayの代わりとして使用されている.SAGEは,NumPyと他のいくつかのツールに基づいて統合された数学ソフトウェアパッケージであり,Magma,Maple,Mathematica,Matlabなどのツールを置き換えることを目指しています. 今日はNumPyについてネットで検索して,NumPyで逆行列を検索してみようと思ったのですが,中国語の情報は見つかりませんでした. フォーラムで,Pythonで逆行列を検索する方法を尋ねても,誰も答えませんでした. そこでNumPyの公式文書を見つけました. その中の小さなセクションは,マトリックスオブジェクトの紹介でした.
matrix型はndarray型に継承され,したがってndarrayのすべてのデータ属性と方法を含んでいる. matrix型とndarray型には6つの重要な違いがあり,arraysがMatrixオブジェクトとして動作するときに,これらの違いが予期せぬ結果をもたらす.
(a) .T – 変位に戻る
(b) .H – 自身の共振転移に戻る
© .I – 逆行列を返します
(d) .A – 2次元数列の1つの視点を返します.
Matrix クラスは,ndarray の Python 子クラスであり,この実装を学習して,自分のndarray 子クラスを構築することもできます.Matrix オブジェクトは,他の Matrix オブジェクト,文字列,または,ndarray のパラメータに変換できる他の要素を使用して構築することもできます.また,NumPy で,matはmatrixの別名です.
例1: 文字列を使って行列を構成する
import numpy as np
a=np.mat('1 2 3; 4 5 3')
print (a*a.T).I
[[ 0.29239766 -0.13450292]
[-0.13450292 0.08187135]]
np.matrix([[ 1.+0.j, 5.+0.j, 10.+0.j],
[ 1.+0.j, 3.+0.j, 0.+4.j]])
np.mat( np.random.rand(3,3) ).T
np.matrix([[ 0.81541602, 0.73987459, 0.03509142],
[ 0.14767449, 0.60539483, 0.05641679],
[ 0.43257759, 0.628695 , 0.47413553]])
Matrix( data, dtype=None, copy=True ) 参数データで入力されたデータはマトリックスに変換されます。 dtype がNone であれば,データ型はデータの内容によって決定されます。 copy がTrue であれば,data内のデータがコピーされ,そうでなければ元のデータバッファが使用されます。 データのバッファゾーンが見つからない場合は,もちろんデータのコピーも行われます。 注意:マトリックスマトリックスは実際にはタイプですので,インスタンスを構成するときに matrix.new (((matrix, data, dtype, copy) を呼び出します。 Mat マトリックスの別名だ Asmatrix(data, dtype=None) 複製されていないデータを返します. matrix ((data, dtype, copy=False) に等しい. Bmat(obj, ldict=None, gdict=None) 文字列,組み込みの序列,または数列 ([array]) を使ってマトリックスを作成する。このコマンドは,他のオブジェクトからマトリックスを作成することを許可する。この中で,objが文字列である場合にのみ,パラメータldictとgdictが使用されます.この2つのパラメータは,局所とモジュールの辞書です。もしそれらを提供しなければ,これらはシステムによって提供されます。
A=np.mat('2 2; 2 2'); B=np.mat('1 1; 1 1');
print(np.bmat('A B; B A'))
[[2 2 1 1]
[2 2 1 1]
[1 1 2 2]
[1 1 2 2]]
投稿者:su frank 投稿日: