データ分析の救世主!機械学習で必須のPandas関数ベスト10
こんにちは。ゆうせいです。
データ分析の救世主!機械学習で必須のPandas関数ベスト10
Pandasはデータの翻訳者
機械学習の世界へようこそ!AIに学習をさせる前には、必ずと言っていいほど「データの掃除」という作業が必要になります。
バラバラな形式のExcelファイルや、文字化けした名簿、空欄だらけのアンケート結果。これらをAIが読み込める綺麗な表形式に整えてくれるのがPandas(パンダス)というライブラリです。
みなさんは、散らかった部屋で探し物をするのと、整理整頓されたクローゼットから服を取り出すの、どちらが効率的だと思いますか?Pandasは、混沌としたデータを整頓し、機械学習という本番に備えるための強力な味方です。
専門用語の解説
Pandasを扱う上で、データフレームという言葉は絶対に外せません。
高校の情報の授業などで触れたことがあるかもしれませんが、要するに「縦の列(カラム)」と「横の行(インデックス)」で構成された巨大な表のことです。Excelのシートそのものだと考えて差し支えありません。
機械学習では、このデータフレームを使って、特定の列だけを抜き出したり、条件に合う行だけを削ったりする作業を繰り返します。
Pandas関数ランキング
実務でデータセットを読み込んでから、学習用データを作るまでに欠かせない関数をランキングで紹介します!
第1位:pd.read_csv()
データ分析の第一歩を刻む関数です。
- 役割CSV形式などのテキストファイルを読み込んで、一瞬でデータフレーム(表)に変換します。
- 例え机の上に散らばった大量のメモ用紙を、一瞬で魔法のバインダーに綴じて整理するような感覚です。
# 1. pd.read_csv()
import pandas as pd
df = pd.read_csv("data.csv")
print(df.head())第2位:df.head()
データの「顔つき」を確認する関数です。
- 役割データの先頭(デフォルトでは5行)だけを表示します。
- 例え分厚い本の「目次」や「最初の数ページ」をパラパラと読んで、どんな内容かを確認する作業に似ています。
# 2. df.head()
import pandas as pd
df = pd.DataFrame({"A": [1,2,3,4,5,6], "B": [10,20,30,40,50,60]})
print(df.head())第3位:df.info()
データの「健康診断」を行う関数です。
- 役割データの型(数字なのか文字なのか)や、欠損値(空欄)がどれくらいあるかを一覧で表示します。
- 例え血液検査の結果を見て、不足している栄養素(データ)がないかチェックするお医者さんのような役割です。
# 3. df.info()
import pandas as pd
df = pd.DataFrame({"A": [1,2,None], "B": ["x","y","z"]})
df.info()第4位:df.describe()
数値データの「性格」をあぶり出す関数です。
- 役割平均、最大値、最小値、中央値などの統計量をまとめて計算します。
- 例えクラス全員の身長を測って、「一番高い人は?」「平均はどれくらい?」という特徴を一瞬でまとめたレポートを作成してくれます。
# 4. df.describe()
import pandas as pd
df = pd.DataFrame({"A": [1,2,3,4,5], "B": [10,20,30,40,50]})
print(df.describe())第5位:df.isnull() / df.dropna() / df.fillna()
データの「穴埋め」を担当する三銃士です。
- 役割空欄を見つけ(isnull)、消去し(dropna)、あるいは別の値で埋めます(fillna)。
- 例え歯が抜けている場所に詰め物をしたり、虫歯の部分を綺麗に取り除いたりして、完璧な歯並び(データ)を作る作業です。
# 5. df.isnull() / df.dropna() / df.fillna()
import pandas as pd
df = pd.DataFrame({"A": [1,None,3], "B": [None,5,6]})
print(df.isnull())
print(df.dropna())
print(df.fillna(0))第6位:df.drop()
不要な荷物を捨てる関数です。
- 役割計算に関係のない列や行を指定して削除します。
- 例え旅行に持っていくカバンの中から、重いだけで使わない辞書を取り出して、身軽にするようなイメージです。
# 6. df.drop()
import pandas as pd
df = pd.DataFrame({"A": [1,2,3], "B": [4,5,6], "C": [7,8,9]})
print(df.drop(columns=["B"]))第7位:df.loc / df.iloc
特定の場所にピンポイントでアクセスする関数です。
- 役割行の名前や番号を指定して、必要なデータだけを抽出します。
- 例え巨大な図書館の棚から、「3番目の棚の、右から5番目の本」を正確に取り出す司書さんのような働きです。
# 7. df.loc / df.iloc
import pandas as pd
df = pd.DataFrame({"A": [10,20,30], "B": [40,50,60]}, index=["x","y","z"])
print(df.loc["y"])
print(df.iloc[1])第8位:df.groupby()
似たもの同士を集める関数です。
- 役割特定の項目(例えば「性別」や「地域」)でデータをグループ分けし、それぞれの合計や平均を出します。
- 例え学年全体のテスト結果を、「クラスごと」に分けて集計し直すような整頓術です。
# 8. df.groupby()
import pandas as pd
df = pd.DataFrame({"Category": ["A","A","B","B"], "Value": [10,20,30,40]})
print(df.groupby("Category").mean())第9位:df.apply()
データ全体に一斉に魔法をかける関数です。
- 役割すべてのデータに対して、自分で作ったオリジナルの計算式を一括で適用します。
- 例えクラス全員のテストの点数に、一律で
点のボーナスを加点するような、一斉操作が可能です。
# 9. df.apply()
import pandas as pd
df = pd.DataFrame({"Score": [70,80,90]})
df["Bonus"] = df["Score"].apply(lambda x: x + 5)
print(df)第10位:df.merge() / pd.concat()
バラバラなデータを合体させる関数です。
- 役割複数の表を、共通のキーワードを元に横につなげたり、縦に積み上げたりします。
- 例え「住所録」と「購入履歴」という別々のファイルを、名前を頼りにつなぎ合わせて「顧客カルテ」を完成させる作業です。
# 10. df.merge() / pd.concat()
import pandas as pd
df1 = pd.DataFrame({"ID": [1,2,3], "Name": ["Alice","Bob","Charlie"]})
df2 = pd.DataFrame({"ID": [1,2,3], "Score": [85,90,95]})
merged = pd.merge(df1, df2, on="ID")
print(merged)
df3 = pd.DataFrame({"ID": [4], "Name": ["David"], "Score": [88]})
concatenated = pd.concat([merged, df3])
print(concatenated)比較表
これら10個の使い道を簡単に整理しました。
| 関数名 | 使うタイミング | 得られる効果 |
| read_csv | 分析の最初 | データが表になる |
| head | 内容確認 | データの雰囲気がわかる |
| info / describe | 全体把握 | データの欠点や特徴がわかる |
| dropna / fillna | 掃除 | AIが読み込める形になる |
| groupby | 集計 | カテゴリ別の傾向が見える |
Pandasを使いこなすために
いかがでしたか?これらの関数をパズルのように組み合わせることで、どんなに汚いデータでもAI用の綺麗な素材に変えることができます。
まずは、身近にあるCSVファイルや、公開されているサンプルデータ(例えばタイタニック号の乗客名簿など)を読み込んで、head関数で中身を覗き見るところから始めてみましょう!自分の手でデータが動くのを見ると、きっとワクワクするはずです。
セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。
投稿者プロフィール

- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。
最新の投稿
新人エンジニア研修講師2026年2月28日f(x, y) とf(x; y) って何が違うの? コピー
新人エンジニア研修講師2026年2月28日f(x, y) とf(x; y) って何が違うの?
新人エンジニア研修講師2026年2月28日AIの深層へようこそ!逆伝播バックプロパゲーションの仕組みを完全マスター
新人エンジニア研修講師2026年2月28日機械学習で必須のscikit-learn関数ベスト10
