Python

Python 転置行列 (np.transpose、Tプロパティ)

目標

 

Pythonを用いて転置行列を作成することを目標とします。

スポンサーリンク

転置行列とは

 

簡単のために「2行2列の行列」を考えます。

\(A\)という行列は、下記のように表記します。

$$A=\begin{pmatrix}
a_{11} & a_{12}\\
a_{21} & a_{22}
\end{pmatrix}\cdot\cdot\cdot (1)$$

 

\(A\)行列の転置行列は以下のように書きます。

$${}^t\!A=\begin{pmatrix}
a_{11} & a_{21}\\
a_{12} & a_{22}
\end{pmatrix}\cdot\cdot\cdot (2)$$

(1)と比較して行と列が入れ替わっただけです。

 

 

Pythonを用いて転置行列を作成

 

例えば、下記の行列Aの転置行列をPythonで作成してみましょう。

$$A=\begin{pmatrix}
1 & 2 & 3 & 4\\
5 & 6 & 7 & 8\\
9 & 10 & 11 & 12\\
13 & 14 & 15 & 16
\end{pmatrix}\cdot\cdot\cdot (3)$$

 

np.transposeを使って転置行列を作成

 

 

転置行列の作成はとても簡単です。

「numpyの中のtranspose関数」を使って転置行列を作成することができます。

実行結果

 

Tプロパティを使って転置行列を作成

 

もうひとつの方法としては、np.matrixで作成したmatrix値のTプロパティというのを使って転置行列を作成できます。

 

実行するとこのように返してくれます。

 

見事に行と列が入れ替わってくれましたね。

出力結果が、

$${}^t\!A=\begin{pmatrix}
1 & 5 & 9 & 13\\
2 & 6 & 10 & 14\\
3 & 7 & 11 & 15\\
4 & 8 & 12 & 16
\end{pmatrix}\cdot\cdot\cdot (4)$$

となっていることを確認してください。

 

 

【プロフィール】

カマキリ
(^^)

大学の専攻は物性理論で、Fortranを使って数値計算をしていました。
CAEを用いた流体解析は興味がありOpenFOAMを使って勉強しています。

プロフィール記事はこちら

 

大学学部レベルの物理の解説をします 大学初学者で物理にお困りの方にわかりやすく解説します。

このブログでは主に大学以上の物理を勉強して記事にわかりやすくまとめていきます。

  • ・解析力学
  • ・流体力学
  • ・熱力学
  • ・量子統計
  • ・CAE解析(流体解析)
  • note
    noteで内容は主に「プログラミング言語」の勉強の進捗を日々書いています。また、「現在勉強中の内容」「日々思ったこと」も日記代わりに書き記しています。
  • youtube
    youtubeではオープンソースの流体解析、構造解析、1DCAEの操作方法などを動画にしています。
    (音声はありません_(._.)_)
  • Qiita
    Qiitaではプログラミング言語の基本的な内容をまとめています。