はじめに
データサイエンスの世界に足を踏み入れると、最初に出会うライブラリのひとつが「pandas」です。
Pythonでデータを扱うなら、pandasはまさに必須ツール。
本記事では、pandasの基本から実践的な使い方までをわかりやすく紹介します。
pandasとは?
pandasは、Pythonで表形式のデータを扱うためのライブラリです。
主に以下の2つのデータ構造を提供します。
- Series:1次元の配列データ
- DataFrame:2次元の表形式データ(行と列)
ExcelやCSVファイルのようなデータをPythonで自在に操作できるようになります。
pandasの基本操作
データの読み込みと表示
import pandas as pd
# サンプルデータを作成
data = {
'Month': ['Jan', 'Feb', 'Mar', 'Apr'],
'Sales': [250, 300, 400, 350],
'Expenses': [200, 220, 260, 300]
}
df = pd.DataFrame(data)
df
出力:
Month Sales Expenses
0 Jan 250 200
1 Feb 300 220
2 Mar 400 260
3 Apr 350 300
データ構造の確認
df.info()
出力:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Month 4 non-null object
1 Sales 4 non-null int64
2 Expenses 4 non-null int64
dtypes: int64(2), object(1)
memory usage: 224.0 bytes
解説:
- 行数:4行(インデックスは0〜3)
- 列数:3列(Month, Sales, Expenses)
- データ型:
Monthは文字列(object)SalesとExpensesは整数(int64)
- 欠損値の有無:すべての列に欠損値なし(non-null count = 4)
- メモリ使用量:224バイト
基本統計量の確認
df.describe()
出力:
Sales Expenses
count 4.00000 4.000000
mean 325.00000 245.000000
std 64.54972 45.825756
min 250.00000 200.000000
25% 287.50000 215.000000
50% 325.00000 240.000000
75% 362.50000 270.000000
max 400.00000 300.000000
解説:
- count: データの件数(4件)
- mean: 平均値
- std: 標準偏差(データのばらつき)
- – min / max: 最小値と最大値
- 25% / 50% / 75%: 四分位数(中央値やデータの分布を把握するために参照)
データの抽出
df['Sales'] # 特定の列を抽出
出力:
0 250
1 300
2 400
3 350
Name: Sales, dtype: int64
df.loc[0] # 特定の行を抽出
出力:
Month Jan
Sales 250
Expenses 200
Name: 0, dtype: object
df[df['Expenses'] > 250] # 条件でフィルタリング
出力:
Month Sales Expenses
2 Mar 400 260
3 Apr 350 300
pandasでできること
pandasは単なるデータの読み書きだけでなく、以下のような高度な操作も可能です:
- 欠損値の処理(
dropna(),fillna()) - データの集計(
groupby(),pivot_table()) - 時系列データの処理(
resample(),rolling()) - データの結合・統合(
merge(),concat())
実践例:売上データの分析
例えば、月別売上データを分析する場合:
monthly_sales = df.groupby('month')['sales'].sum()
monthly_sales.plot(kind='bar')
こういった感じで、pandasはmatplotlibなどの可視化ライブラリとも連携し、グラフ表示も簡単にできます。
まとめ
pandasはデータサイエンスの基礎を築く強力なツールです。
使いこなせばデータ分析の最初のステップである「前処理」を効率的かつ高速に行うことができます。
まずは小さなプロジェクトでも良いので、自分の興味あるデータで分析してみましょう!

