Pythonの強力なデータ分析ライブラリ「Pandas」は、データの読み込み、集計、加工などを簡単に行うことができます。
Pandasのインストール
方法1:pipを使う(推奨)
pip install pandas
Pandasのメリット
1. 表形式のデータを簡単に扱える
Pandasは、「DataFrame」と呼ばれるExcelのような表形式のデータ構造を提供しています。
列に名前をつけて扱えるため、読みやすく、直感的にコードを書けます。
# 例:DataFrameの作成
import pandas as pd
df = pd.DataFrame({
'名前': ['佐藤', '田中', '鈴木'],
'年齢': [25, 30, 22]
})
print(df)
2. CSVやExcelファイルを簡単に読み書きできる
Pandasは、CSV、Excel、JSON、SQLなど多くのファイル形式に対応しています。
# CSV読み込み・書き出し
df = pd.read_csv('data.csv')
df.to_csv('output.csv', index=False)
3. 集計・フィルタ・ソートが簡単
SQLのような処理が、数行のPythonコードで実現できます。
# フィルタ:年齢が25歳以上の行を抽出
filtered = df[df['年齢'] >= 25]
# ソート:年齢の昇順
sorted_df = df.sort_values('年齢')
4. 集計関数が豊富
合計、平均、最大・最小、件数など、集計に便利な関数が豊富です。
# 年齢の平均値を計算
average_age = df['年齢'].mean()
5. 欠損値(NaN)の扱いが簡単
データ分析ではよく出くわす「欠損値」の処理も簡単にできます。
# 欠損値を0で埋める
df.fillna(0)
# 欠損値のある行を削除
df.dropna()
6. 時系列データの処理に強い
Pandasは日付データの扱いが得意で、時系列データの集計や変換が簡単です。
df['日付'] = pd.to_datetime(df['日付'])
df.set_index('日付').resample('D').count() # 日ごとの集計
アクセスユーザーIPよりアクセス数を分析するサンプル
例:CSVファイル形式のアクセスログ(例: access_log.csv
)
timestamp,ip,user_agent
2025-05-01 10:00:00,192.168.0.1,Mozilla/5.0
2025-05-01 10:01:00,192.168.0.2,Chrome/90.0
2025-05-01 10:02:00,192.168.0.1,Mozilla/5.0
Pythonコード:IPアドレスごとのアクセス数集計
import pandas as pd
# CSV読み込み
df = pd.read_csv("access_log.csv")
# IPごとのアクセス数を集計
ip_counts = df['ip'].value_counts()
# 結果表示
print(ip_counts)
出力例:
192.168.0.1 2
192.168.0.2 1
Name: ip, dtype: int64
このように、Pandasを使えばわずか数行で、アクセスログから重要な情報を簡単に抽出できます。