ホームページ >バックエンド開発 >Python チュートリアル >Python で行列を効率的に転置するにはどうすればよいですか?
転置行列 Python の転置
転置操作は、行列の行と列を反転します。プログラミングで行列を扱う場合、この概念を理解することが重要です。 Python では、さまざまな方法を使用して行列の転置を実行でき、それぞれに異なるアプローチと効率があります。
Zip とアスタリスクを使用した転置
zip(*) は便利で、行列を転置する簡単な方法。行列内のすべての行の要素を結合し、それらをタプルとして返します。これらのタプルは、リスト内包表記またはマップを使用してリストに変換し、行列転置を取得できます。
<code class="python">A = [[1, 2, 3], [4, 5, 6]] transpose = [list(x) for x in zip(*A)]</code>
アスタリスク付きリスト内包表記を使用した転置
前と同様このメソッドでは、アスタリスク付きのリスト内包表記を使用して、行列を簡潔に転置できます。
<code class="python">transpose = [[row[i] for row in A] for i in range(len(A[0]))]</code>
NumPy を使用した転置
NumPy は、Python の数値演算用に高度に最適化されたライブラリです。 。これは、行列の転置に利用できる便利な transpose() 関数を提供します。
<code class="python">import numpy as np transpose = np.transpose(A)</code>
パフォーマンスに関する考慮事項
小さな行列の場合、これらのメソッドの時間計算量は次のとおりです。比較的重要ではありません。ただし、行列のサイズが増加するにつれて、NumPy の transpose() は、高度に最適化された実装により、他のアプローチよりも大幅に高速であることがわかります。
以上がPython で行列を効率的に転置するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。