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?

Pythonでデータ分析を始める!Pandasの基本的な使い方

1
Posted at

Pythonでデータ分析を始める!Pandasの基本的な使い方

目次

  1. はじめに
  2. Pandasとは?
  3. データの読み込み
  4. データの確認
  5. データの操作(抽出・フィルタリング)
  6. データの集計
  7. データの可視化(Matplotlibとの連携)
  8. 応用例:複数条件での抽出や欠損値処理
  9. まとめ

1. はじめに

Pythonでデータ分析をする際、Pandasは最もよく使われるライブラリの一つです。
Excelのように表形式データを扱え、集計や加工、簡単な可視化も可能です。
結構(ほとんどの場合)つかうので初心者の人はぜひ知っておきたい。

Pandasを使うメリット:

  • データの読み書きが簡単(CSV、Excel、JSONなど)
  • データの抽出・加工が直感的
  • グループ化や集計が簡単
  • MatplotlibやSeabornと組み合わせて可視化も可能

2. Pandasとは?

Pandasは2つの基本データ構造を使います。

データ構造 説明
Series 一次元データ。リストや配列のようなもの。
DataFrame 二次元データ。表形式(行と列)で管理できる。
import pandas as pd

# Seriesの例
s = pd.Series([10, 20, 30])
print(s)

# DataFrameの例
data = {'名前': ['Alice', 'Bob', 'Charlie'], '年齢': [25, 30, 22]}
df = pd.DataFrame(data)
print(df)

3. データの読み込み

Pandasでは様々な形式のデータを簡単に読み込めます。
ほんとに便利

# CSVファイルを読み込む
df = pd.read_csv('sample.csv')

# Excelファイルを読み込む
# df = pd.read_excel('sample.xlsx')

# JSONファイルを読み込む
# df = pd.read_json('sample.json')

print(df.head())  # 最初の5行を表示

head() 以外にも tail()(最後の5行)や、sample(n=3)(ランダムに3行)なども便利です。


4. データの確認

データの大きさや型を確認する方法デス。

print(df.shape)       # 行数・列数
print(df.columns)     # カラム名
print(df.info())      # データ型や欠損値の確認
print(df.describe())  # 数値データの統計情報

ポイント:

  • shape → データの規模を把握
  • info() → 型や欠損値をチェック
  • describe() → 平均・標準偏差・最大値・最小値など基本統計を確認

5. データの操作(抽出・フィルタリング)

特定の列を取得

print(df['名前'])  # '名前'列だけ

複数列を取得する場合:

print(df[['名前', '年齢']])

条件でフィルタリング

# 年齢が20以上のデータ
df_filtered = df[df['年齢'] >= 20]
print(df_filtered)

# 複数条件
df_filtered = df[(df['年齢'] >= 20) & (df['性別'] == '女性')]

新しい列を作成

df['年齢+10'] = df['年齢'] + 10
df['名前_年齢'] = df['名前'] + '_' + df['年齢'].astype(str)
print(df)

6. データの集計

平均や合計

print(df['年齢'].mean())  # 平均
print(df['年齢'].sum())   # 合計
print(df['年齢'].max())   # 最大値
print(df['年齢'].min())   # 最小値

グループ化

# 性別ごとの平均年齢
grouped = df.groupby('性別')['年齢'].mean()
print(grouped)

# 複数集計も可能
grouped = df.groupby('性別')['年齢'].agg(['mean', 'max', 'min'])
print(grouped)

7. データの可視化(Matplotlibとの連携)

PandasはMatplotlibと組み合わせると簡単に可視化できます。

import matplotlib.pyplot as plt

# 年齢のヒストグラム
df['年齢'].hist()
plt.title('年齢の分布')
plt.xlabel('年齢')
plt.ylabel('人数')
plt.show()

# 性別ごとの人数を棒グラフ
df['性別'].value_counts().plot(kind='bar')
plt.title('性別の人数')
plt.show()

ポイント:

  • plot(kind='bar') → 棒グラフ
  • plot(kind='line') → 折れ線グラフ
  • plot(kind='pie') → 円グラフ

8. 応用例:複数条件での抽出や欠損値処理

欠損値の確認

print(df.isnull().sum())  # 各列の欠損値数

欠損値の処理

# 欠損値を0で置き換え
df['年齢'] = df['年齢'].fillna(0)

# 欠損値の行を削除
df = df.dropna()

複数条件での抽出例

# 年齢が20以上かつ性別が女性
df_filtered = df[(df['年齢'] >= 20) & (df['性別'] == '女性')]

9. まとめ

  • PandasはPythonでデータ分析をするためのすごく強力なライブラリ
  • CSV・Excel・JSONから簡単にデータを読み込める
  • データの抽出・加工・集計・可視化が簡単
  • 欠損値処理や複数条件での抽出など実務でも便利
  • 初めてのデータ分析は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?