a
Pythonのリストにしましょう。
a = [1,2,3]
に行列転置を適用するとa
、次のようになります。
np.matrix(a).transpose()
matrix([[1],
[2],
[3]])
私はこの機能を一般化することを目指しており、次に例を使って何をしようとしているのかを説明します。b
別のリストにしましょう。
b = [[1, 2], [2, 3], [3, 4]]
では、リスト アイテムは 1、2、および 3です。転置を実行する目的でのみ、、、およびを のリスト アイテムとa
見なしたいと思います。出力を次のようにしたいと思います。[1,2]
[2,3]
[3,4]
b
array([[[1,2]],
[[2,3]],
[[3,4]]])
一般に、リスト項目がどのように見えるかを指定し、それに基づいて行列の転置を実行できるようにしたいと考えています。
上記を実行するために数行のコードを書くこともできますが、この質問をする目的は、これを行うための組み込みの numpy 機能または pythonic の方法があるかどうかを調べることです。
編集: 以下の unutbu の出力は、上記の出力と一致します。ただし、より一般的なケースで機能するソリューションが必要でした。以下に別の入力/出力を投稿しました。私の最初の例は、私が言いたいことを伝えるのに十分な説明ではありませんでした. のアイテムをb
、[1,2]
、[2,3]
、[3,4]
および とし[5,6]
ます。次に、以下に示す出力は、高次元の要素で行列転置を行ったものになります。より一般的には、「アイテム」がどのように見えるかを説明したら、転置のようなことを行う方法があるかどうかを知りたいと思います。
Input: b = [[[1, 2], [2, 3]], [[3, 4], [5,6]]]
Output: array([[[1,2], [3,4]],
[[2,3], [5,6]]])