【Python】2次元配列の列を簡単に抽出する方法

【Python】2次元配列の列を簡単に抽出する方法

公開: 更新:


Pythonで2次元配列の特定列を抽出する基本的な方法

【サンプルコード】
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
column = [row[1] for row in matrix]
print(column)
【実行結果】
[2, 5, 8]

このサンプルコードでは、まずmatrixという名前の2次元配列(行列)を定義しています。

matrixは3つのリストを要素として持ち、それぞれのリストが行を表しています。

次にcolumnという新しいリストを作成します。ここで使用されているリスト内包表記は、matrixの各行(row)から特定の要素を抽出するために使われています。

この例では各行の2番目の要素(インデックス1)をcolumnに追加しています。

Pythonのインデックスは0から始まるため、インデックス1は実際には2番目の要素を意味します。

結果として、matrixの各行から2番目の要素が抽出され、新しいリストcolumnに格納されます。

最後にprint関数を用いてcolumnの内容を表示します。

「Python」を学べるコードキャンプのサービス

numpyを使用した2次元配列の列抽出方法

【サンプルコード】
import numpy as np
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
column = matrix[:, 1]
print(column)
【実行結果】
[2 5 8]

この方法では、まずnumpyライブラリをインポートしています。numpyはPythonで数値計算を効率的に行うためのライブラリで、特に多次元配列の操作に優れています。

次にmatrixという名前のnumpy配列を作成しています。numpy配列では、列の抽出がより簡単になります。

ここではmatrix[:, 1]というスライス表記を使用しています。コロン(:)は全ての行を意味し、1は抽出したい列のインデックスです。

この表記によりmatrixの2番目の列が抽出され、column代入されます。最後にprint関数でcolumnの内容を出力しており、実行すると指定した列の要素のみが表示されます。

複数列の抽出と結果の活用

【サンプルコード】
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
columns = [list(row[i] for row in matrix) for i in [0, 2]]
print(columns)
【実行結果】
[[1, 4, 7], [3, 6, 9]]

この例では、2次元配列matrixから複数の列を同時に抽出しています。

外側のリスト内包表記では、[0, 2]で指定された複数のインデックスに対応する列を抽出しています。

内側のリスト内包表記は、特定のインデックスiに対して、matrixの各行から要素を抽出しています。

結果として、1番目と3番目の列が抽出され、それぞれが新しいリストに格納されます。

print関数を使用することで、抽出された列がどのように格納されているかを確認できるので、この方法は、複数の列を同時に取り扱う際に便利です。

※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。

ITやプログラミングに関するコラム


ITやプログラミングに関するニュース

ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。

コードキャンプIT・プログラミング研修事例/現場により近いところにデジタルを根付かせるDX基礎講座研修|株式会社ブリヂストン - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/業務の効率化・DX推進に向けたIT人材育成への第一歩|株式会社カナエ - ITやプログラミングを知って学べるコネクトメディア 企業・法人向けのIT・プログラミング研修 - ITやプログラミングを知って学べるコネクトメディア 中途採用者向けのIT・プログラミング研修 - IT・プログラミングを知って学べるコネクトメディア

新着記事

対象者別で探す

子供(小学生・中学生・高校生)向け
プログラミング教室検索する

子供(小学生・中学生・高校生)がロボットやプログラミング言語を学ぶことができるオフラインからオンラインスクールを検索、比較することが可能です。

子供(小学生・中学生・高校生)
プログラミング教室検索する

ITやプログラムなどの
最新情報を検索する

日々、新しいITやプログラミング言語の情報が流れていきますが、特定の情報を時系列でニュースやコラムを確認することができます。

ITやプログラムなどの
最新情報を検索する