ホームページ >バックエンド開発 >Python チュートリアル >Python で 2D 行列を効率的に転置するにはどうすればよいですか?
Python の行列転置
行列転置では、行列の行と列を反転して、元の次元を反転した新しい行列を作成します。 2D 行列を転置する Python 関数を開発する方法を考えてみましょう。
Python 関数を提供しましたが、正しく動作しません。コードを調べてエラーを特定しましょう。関数内:
関数の修正版は次のとおりです。
def matrixTranspose(anArray): transposed = [[] for _ in range(len(anArray))] for t in range(len(anArray)): for tt in range(len(anArray[t])): transposed[tt].append(anArray[t][tt]) return transposed
別の簡潔な説明ソリューションは、Python の組み込み zip 関数を使用して存在し、複数の反復可能オブジェクトから対応する要素を結合します。列からタプルを作成し、それらをリストに変換して戻すことにより、行列を転置します。
transposed = list(zip(*anArray))
Python 3 の場合は、* 演算子を使用してタプルを解凍し、リストのリストを作成することをお勧めします。
transposed = [*zip(*anArray)]
これらのメソッドは、Python で 2D 行列を効率的に転置します。
以上がPython で 2D 行列を効率的に転置するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。