データ分析の分野で非常に人気があるPythonのライブラリ、Pandas。
その中でもデータの選択や抽出に役立つのがilocです。
初心者から上級者まで、ilocの使い方をマスターすれば、Pandasを効率的に使いこなすことができます。
この記事では、Pandasのilocについて詳しく解説します。
基本的な使い方から応用テクニックまで、しっかりと理解できる内容になっていますので、ぜひ最後までお読みください。
Pandasとは?
Pandasは、Pythonのデータ分析ライブラリで、表形式のデータ(DataFrame)を簡単に操作できるツールです。
データのフィルタリング、集計、クリーニングなど、多岐にわたる機能を提供してくれるため、データ分析のプロジェクトではほぼ必須となっています。

Pandasを一から学びたい人は、次の記事を読んでみてね!
ilocとは?
ilocは、”integer location“の略で、データのインデックス番号を使って行や列を選択するメソッドです。

locとは違って、「インデックス番号」を使って指定するんだね!
locについては、次の記事で詳しくまとめているので、
ぜひ、ご覧ください!
ilocの基本的な使い方
行の選択
ilocでは、行番号を指定してデータを取得できます。
import pandas as pd
# サンプルデータの作成
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 30, 35],
'City': ['Tokyo', 'Osaka', 'Nagoya']}
# データフレームの作成
df = pd.DataFrame(data)
# 2番目の行を取得(インデックスは0から始まる)
print(df.iloc[1])


ilocに数値を指定すると、行番号と解釈され、指定した行を取得してくれます!
ただし、0スタートであることを忘れずに!
列の選択
行だけでなく、列も選択することが可能です。
import pandas as pd
# サンプルデータの作成
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 30, 35],
'City': ['Tokyo', 'Osaka', 'Nagoya']}
# データフレームの作成
df = pd.DataFrame(data)
# 2列目(Age列)を取得
print(df.iloc[:, 1])


ここで、:は「すべての行」を意味し、1は「2番目の列」を意味します!
値の選択(行・列を指定)
import pandas as pd
# サンプルデータの作成
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 30, 35],
'City': ['Tokyo', 'Osaka', 'Nagoya']}
# データフレームの作成
df = pd.DataFrame(data)
# 2列目(Age列)の1行目を取得
print(df.iloc[0, 1])


インデックス情報から狙った値が取得できていることがわかるね!
複数の行や列の選択
複数の行を取得する
リストやスライスを使用して、複数の行を一度に取得することができます。
import pandas as pd
# サンプルデータの作成
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 30, 35],
'City': ['Tokyo', 'Osaka', 'Nagoya']}
# データフレームの作成
df = pd.DataFrame(data)
# 1番目から2番目の行を取得
print(df.iloc[0:2])

複数の列を取得する
同様に、複数の列も取得できます。
import pandas as pd
# サンプルデータの作成
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 30, 35],
'City': ['Tokyo', 'Osaka', 'Nagoya']}
# データフレームの作成
df = pd.DataFrame(data)
# 1列目と2列目を取得
print(df.iloc[:, 0:2])

まとめ
ilocは、データフレームから特定の行や列を位置ベースで抽出するための便利なメソッドです。
データ分析の基礎を固めるためにも、ぜひ理解しておきたい機能です。
コメント