【Pandas】 DataFrame の行を抽出する方法【Python】
今回は、Python の Pandas で、DataFrame 型の行を抽出する方法を紹介します。
DataFrame の行抽出方法は、大まかに以下の2種類があります。
- インデックスを指定して行を抽出する方法( iloc、loc )
- 各行の論理値(True or False)で行を抽出する方法
この2つの方法についてそれぞれ説明していきます。
インデックスを指定して行を抽出する方法
DataFrame のインデックス(index)を指定して行を抽出することができます。
インデックスの値を指定するには「loc」を使い、インデックスの番号(整数値)を指定するには「iloc」を使います。
結果は DataFrame 型で返ります。
今回は、分かりやすい loc を使ってみます。
‘a6789012002’, ‘akikirara1122′ などの ユーザID をインデックスとした DataFrame から、’a6789012002’ の行だけ抽出するときは、以下のようにします。
|
1 |
df.loc['a6789012002'] |
出力結果は以下のようになります。

インデックスの ユーザ ID をリストで渡すと複数条件で指定することができます。
|
1 |
df.loc[['a6789012002', 'akikirara1122']] |
出力結果は以下のようになります。

各行の論理値(True or False)で行を抽出する方法
先ほどは、インデックスを指定して行の抽出を行いましたが、これは条件式でデータの値を比較して行の抽出を行う方法です。
先ほど抽出した以下のデータを使います。

「id」カラムの列の値が「0」の行を抽出したいとします。
DataFrame のカラムと比較演算子による条件式を指定すると、True もしくは False が入った Series が返ってきます。
|
1 |
df_user['id'] == 0 |
1番上の「0」の行だけ True になっていることがわかります。
これを DataFrame に与えると、True の行のみ抽出することができます。
|
1 |
df_user[df_user['id'] == 0] |

ちなみに、逆に id が「0」以外の行を取得する場合は、以下のように比較演算子を「!=0」とします。
|
1 |
df_user['id'] != 0 |
1行目以外が True になります。
|
1 |
df_user[df_user['id'] != 0] |

関連記事
-
-
【Python】Beautiful Soup を使ってスクレイピングする方法。
Beautiful Soup は、シンプルでわかりやすい API でデータを抜き出せる Python
-
-
【Python】 複数の辞書型の同じ key を持つ value を計算に用いる方法。
Python で、複数の辞書型を読み込んで、同じキー(key)を持つ数値(value)を計算に使う方
-
-
【Python】機械学習のために SciPy・Matplotlib・scikit-learn をインストール。
Python で機械学習を行うために、Windows OS の python 2 系にライブラリ「S
-
-
【Atom エディタ】Python で Matplotlib のグラフを Atom 上に表示させる方法。
Atom エディタで Python の Matplotlib ライブラリを使って、Atom 上にグラ
-
-
【Python】プログレスバーを表示させる【tqdm】
Python でスクリプトの実行時間が長くなると、進捗状況が知りたくなったので、標準出力にどのくらい
-
-
【Google Colaboratory】クラウド上でPythonを使って機械学習を行う。
Python をブラウザ上で実行して、手軽に機械学習ができる環境「Google Colaborato
-
-
【Pandas】 DataFrame のある列の最大値を含む行のインデックス値を取得する方法。
今回は、Pandas の DataFrame において、ある列で最大値を求めて、その最大値をもつ行に
-
-
【OpenCV】検出した顔画像部分を切り出す方法【Python】
OpenCV を使って、Python で画像の中から顔部分を切り出したときのメモです。 顔部分
-
-
【matplotlib】 Python でヒストグラムの横軸と棒(ビン)の数を調整する方法。
Python の matplotlib を使ってヒストグラムを描画し、横軸の目盛りと棒(ビン)がそろ
-
-
【Pandas】 DataFrame と Series のデータ構造について【Python】
今回は、Python でデータ分析を行っていると必ず使う Pandas の DataFrame と



















