【Python】第7章第10回:pandasを用いたデータフレーム操作
本記事では、Pythonのデータ解析ライブラリ「pandas」を使ったデータフレーム操作の基本について解説します。効率的なデータ処理と分析スキルを身につけましょう。
0. 記事の概要
この記事を読むメリット
- データ解析スキルの向上:pandasを使った基本操作ができるようになります。
- 実践的なスキルの習得:データフレームを用いたデータ管理や処理を学べます。
- 業務で役立つスキル:ExcelデータやCSVファイルの効率的な操作が可能になります。
この記事で学べること
- pandasライブラリの基本概念とインストール方法
- データフレームの作成、操作、編集
- pandasを使った実践的なデータ処理
1. pandasとは何か?
1.1 基本概念
pandasは、Pythonでデータ解析やデータ操作を行うための強力なライブラリです。以下の特徴を持ちます。
- データフレーム: 表形式データを扱うための構造
- 柔軟な操作性: 行や列の選択、フィルタリング、並べ替えが簡単
- ファイル互換性: CSV、Excel、SQLデータベースなどと連携可能
1.2 インストール方法
# pandasのインストール
pip install pandas
2. 基本的なデータフレーム操作
2.1 データフレームの作成
# データフレームの作成
import pandas as pd
# 辞書からデータフレームを作成
data = {
"名前": ["Alice", "Bob", "Charlie"],
"年齢": [25, 30, 35],
"職業": ["エンジニア", "デザイナー", "教師"]
}
df = pd.DataFrame(data)
print(df)
2.2 データフレームの基本操作
# データフレームの操作
# 列の追加
df["給与"] = [50000, 60000, 55000]
# 行の削除
df = df.drop(1) # 2行目を削除
# 特定の列の取得
ages = df["年齢"]
print(df)
print(ages)
動作解説
- データフレーム作成: 辞書を基にデータフレームを生成。
- 列の追加: 新しいデータを追加して拡張。
- 行の削除: 不要な行を指定して削除。
- 列の選択: 特定のデータを抽出して操作。
3. 応用例:データ集計とフィルタリング
3.1 集計操作
# 集計操作
print(df.describe()) # 基本統計量の計算
print(df["年齢"].mean()) # 平均年齢を計算
3.2 フィルタリング
# 特定条件の行を抽出
filtered_df = df[df["年齢"] > 30]
print(filtered_df)
動作解説
- 基本統計量:
describe()
を使ってデータ全体の統計情報を取得。 - 条件フィルタリング: 条件に基づいてデータを絞り込み。
4. 練習問題
以下の課題に挑戦してみましょう。
- データフレームを作成し、特定の列を基に並べ替えてください。
- 行を条件付きで削除するプログラムを作成してください。
- データフレームの行数や列数を取得するコードを書いてください。
5. 練習問題の解答と解説
問1〜3の解答例
# 問1: 列を基に並べ替え
df = pd.DataFrame(data)
sorted_df = df.sort_values("年齢")
print(sorted_df)
# 問2: 条件付きで行を削除
filtered_df = df[df["年齢"] > 28]
print(filtered_df)
# 問3: 行数や列数を取得
rows, cols = df.shape
print(f"行数: {rows}, 列数: {cols}")
6. まとめ
本記事では、pandasを使ったデータフレーム操作の基本を学びました。次は、実際のデータ解析や業務データを使ってさらにスキルを磨いてみましょう。