Python

【Pandasで簡単データ解析】DataFrameからのデータ取り出し

本記事ではDataFrameからのデータ取り出しについて、iloc関数を使用した方法についてまとめたものです。

Pythonでデータ分析やグラフでデータを可視化する上でデータの取り出しを行うことは必須のスキルと言えます。

調べれば分かる内容なので覚える必要はありません。

一通り知っておくと後々のコーディングに活きてくるので、どんな事ができるのかくらいは把握しておくと良いと思います。

記事で扱うデータフレームについて

plotly_expressで用意されているデータフレームを使用します。

import plotly.express as px
df = px.data.medals_long()

詳しくは以下の記事を参考にしてください。

Pythonをグラフ作成で学ぶ【plotly_expressで1行プログラミング】 【本記事の目標】 たった1行で動くグラフを作成し、体感する! これからPythonを学びたい人向けに朗報です。 今から紹介...

iloc関数

行番号、列番号を利用したデータ取得を行う関数は、関数の最初にiがついているのでわかりやすいです。

指定した行番号のSeriesオブジェクトを取得

一行目のデータを取り出してみます。

df.iloc[行番号]

指定した行番号範囲のデータ値を取得

0行目~1行目のデータを表示します。

df.iloc[行番号範囲]

指定した列番号のSeriesオブジェクトを取得

ある列のデータを表示します。

df.iloc[:, 列番号]

:は全ての行/列番号のリストの指定を意味します

指定した行番号と列番号のデータ値を取得

df.iloc[行番号, 列番号]

0を含んで、2行目・3列目のデータを示します。

指定した行番号リストと列番号リストのDataFrameオブジェクトを取得

df.iloc[行番号リスト, 列番号リスト]

※範囲の指定と似ているので注意

iat関数

指定した行番号と列番号のデータ値を取得

df.iat[行番号, 列番号]

loc関数

指定した行名のSeriesオブジェクトを取得

df.loc[行名]

指定した列名のSeriesオブジェクトを取得

df.loc[:, 列名]

指定した行名と列名のデータ値を取得

df.loc[行名, 列名]

at関数

指定した行名と列名のデータ値を取得

df.at[行名, 列名]

set_index関数

指定した列名のデータ列を行名に設定

df.set_index(列名)

指定した列名リストの複数のデータ列を行名に設定

reindex関数

指定した値リストを新たな行名/列名に設定

df.reindex(値リスト, axis=0 or 1)

以上で紹介は終わりです。

ABOUT ME
Mickey@コーヒー好きエンジニア
【製造×プログラミング×AI】 趣味は自家焙煎コーヒー作り。Python、VBAでの業務改善を得意とする。最近はStreamlit、Plotly、Pythonista 3にハマり中。 note、Twitter、Instagramやっています♪ noteではコーヒーの海外論文(主に焙煎理論)やAIに関する情報の発信をしています。