1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pandasで始めるデータ分析|IPアドレスでアクセス数を集計してみよう

Last updated at Posted at 2025-05-23

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

image.png

このように、Pandasを使えばわずか数行で、アクセスログから重要な情報を簡単に抽出できます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?