こんにちは、JS2IIUです。
DataFrameを扱う際にはカラムの操作をすることが非常に多いです。Pandasではシンプルな書き方でカラムの操作をスマート実行できるので、データ解析の作業効率がUPできます。今回もよろしくお願いします。
はじめに
Pandasは、Pythonでデータ処理を行う際に非常に便利なライブラリです。データ分析や機械学習の前処理など、あらゆる場面で活用されています。本記事では、PandasのDataFrameにカラムを追加したり削除したりする方法を紹介します。
この知識は、例えば以下のような場面で役立ちます:
- データセットに新しい情報を計算して追加する場合
- 不要なカラムを削除してデータを整理する場合
- カラム操作の際にエラーを避けるために正しいパラメータを理解する場合
具体的な操作方法やサンプルコードを通して、データ加工のスキルを深めましょう。
新しいカラムの追加方法
1. 計算結果を使ったカラムの追加
計算結果を新しいカラムとして追加する場合、既存のカラムを基に演算を行います。
import pandas as pd
# サンプルデータ
data = {
'name': ['Alice', 'Bob', 'Charlie'],
'math_score': [85, 90, 95],
'english_score': [80, 88, 92]
}
df = pd.DataFrame(data)
# 新しいカラムを追加(平均スコアを計算)
df['average_score'] = (df['math_score'] + df['english_score']) / 2
print(df)
実行結果
name math_score english_score average_score
0 Alice 85 80 82.5
1 Bob 90 88 89.0
2 Charlie 95 92 93.5

2. 条件を使ったカラムの追加
条件分岐に基づいて新しいカラムを作成する方法です。
# 条件を使ったカラムの追加
df['pass'] = df['average_score'] >= 85
print(df)
実行結果
name math_score english_score average_score pass
0 Alice 85 80 82.5 False
1 Bob 90 88 89.0 True
2 Charlie 95 92 93.5 True

カラム削除方法:.dropメソッド
DataFrameからカラムを削除するには、.dropメソッドを使用します。このメソッドは、指定したカラムや行を削除するために使われます。
1. カラム削除
以下は、カラムを削除する例です。
# 'pass'カラムを削除
df = df.drop('pass', axis=1)
print(df)
実行結果
name math_score english_score average_score
0 Alice 85 80 82.5
1 Bob 90 88 89.0
2 Charlie 95 92 93.5

2. 行削除との違い
.dropメソッドのaxisパラメータは、削除対象が「行」か「カラム」かを指定します:
axis=0(デフォルト):行を削除axis=1:カラムを削除
以下のコードで確認してみましょう。
# 行を削除
df_row_deleted = df.drop(0, axis=0) # 0番目の行を削除
print(df_row_deleted)
実行結果
name math_score english_score average_score
1 Bob 90 88 89.0
2 Charlie 95 92 93.5

axisパラメータの理解
axisは、Pandasでの操作方向を指定する重要なパラメータです。
axis=0:操作対象が「行」方向(垂直)axis=1:操作対象が「列」方向(水平)
例えば、.sum()メソッドを使った場合の挙動を見てみましょう。
# 各カラムの合計を計算
print(df.sum(axis=0)) # 列方向(カラムごとの合計)
# 各行の合計を計算、nameの文字列が入っていると合計できないので列削除する
df = df.drop('name', axis=1)
print(df.sum(axis=1)) # 行方向(行ごとの合計)

実行結果
列方向の合計:
name AliceBobCharlie
math_score 270
english_score 260
average_score 265.0
dtype: object
行方向の合計:
0 247.5
1 267.0
2 282.5
dtype: float64
おわりに
本記事では、PandasのDataFrameにおけるカラムの追加・削除方法とaxisパラメータの使い方を詳しく解説しました。カラムの操作はデータ加工の基本的なスキルであり、さまざまな場面で役立ちます。ぜひ実際のプロジェクトで試してみてください。
参考リンク
少しだけPRです。
Pandasについて詳しく知りたいかた、もっと使いこなしたい方におすすめの本です。数年前に購入しましたが、今も手元に置いて時々見返しています。「pandasクックブック Pythonによるデータ処理のレシピ」Theodore Petrou著、黒川利明訳。
最後まで読んでいただきありがとうございます。73


コメント