データフレームは、pandasを使う場合の主要な表ツールになります。行と列があり、numpyの2次元のarrayと似ていますが、列に変数名(カラム名)がつけられることが特徴です。
変数名があることで変数各系列の取り扱いが容易にになります。
データフレームの基本構造
データフレームは1行目にカラム名(列名)があることが特徴です。カラム名を操作することで、その列のデータ全体を操作できます。通常の列以外に太郎、花子といった行ごとにインデックスを作ることができます。インデックスを作る場合はdf.set_index(‘列名’, inplace=True)と指定します。元のオブジェクトを書き換えるときはinplace=Trueと指定します。名前をインデックスとした時は年齢が0列名になります。

import pandas as pd
df=pd.DataFrame({
'名前':['太郎','花子','次郎','桜'],
'年齢':[20,21,22,23],
'住所':['東京','名古屋','大阪','福岡'],
'職業':['会社員','会社員','会社員','会社員']
})
print(df)
出力
名前 年齢 住所 職業
0 太郎 20 東京 会社員
1 花子 21 名古屋 会社員
2 次郎 22 大阪 会社員
3 桜 23 福岡 会社員
名前をインデックスにする場合は以下のようになります。名前はインデックスとなり、ゼロ列目は年齢になります。
df.set_index('名前', inplace=True)
print(df)
出力
年齢 住所 職業
名前
太郎 20 東京 会社員
花子 21 名古屋 会社員
次郎 22 大阪 会社員
桜 23 福岡 会社員
カラム名の操作
カラム名の操作についてです。dfはデータフレームとします。df.columsは属性を読む場合と代入する場合の2通りの使い方があります。
カラム名の取得
df.columns
df.columnsと単体で使った場合は、カラム名をすべて取得します。
import pandas as pd
df = pd.DataFrame({
'列1': [1,2,3],
'列2':[4,5,6] ,
'列3': [7,8,9]
})
print(df)
print(df.columns)
出力
列1 列2 列3
0 1 4 7
1 2 5 8
2 3 6 9
Index(['列1', '列2', '列3'], dtype='object')
カラム名の変更
df.columns=[‘列A’,’列B’,’列C’]
df.columns=[]という形で使った場合は、列名の変更に使われます。列名を指定していないときは列名の指定となります。
import pandas as pd
df = pd.DataFrame({
'列1': [1,2,3],
'列2':[4,5,6] ,
'列3': [7,8,9]
})
df.columns=['列3','列2','列1']
print(df)
出力
列3 列2 列1
0 1 4 7
1 2 5 8
2 3 6 9
カラムの入れかえ
df[[‘列A’,’列B’]]
この操作では、列の順番とともに、値も一緒に変わります。df[]はデータフレームの操作に必要な角カッコ、[‘列A’,’列B’]は、リストを表す角カッコです。
import pandas as pd
df = pd.DataFrame({
'列1': [1,2,3],
'列2':[4,5,6] ,
'列3': [7,8,9]
})
df=df[['列3','列2','列1']]
print(df)
出力
列3 列2 列1
0 7 4 1
1 8 5 2
2 9 6 3
カラム名の一部入れ替え
df.rename(columns={‘古い列名’:’新しい列名’},inplace=True)
カラム名れの一部を入れ替える方法です。renamメソッドを使います。{}は、辞書形式になっていて、複数の入れ替えもできます。{’列1’:’列A’,’列2’:’列B’}という形です。inplace=Trueとするともとのデータフレームを変更することになります。inplace=Falseの場合は変更せず、新たなデータフレームを作ることになります。
import pandas as pd
df = pd.DataFrame({
'列1': [1,2,3],
'列2':[4,5,6] ,
'列3': [7,8,9]
})
df.rename(columns={'列1':'列A','列2':'列B'},inplace=True)
print(df)
出力
列A 列B 列3
0 1 4 7
1 2 5 8
2 3 6 9
経済統計の使い方では、統計データの入手法から分析法まで解説しています。

- 経済学Q&A(2025)その4
- 経済学Q&A(2025)その3
- 経済学Q&A(2025)その2
- 【python】データフレームの中身を知る、追加する(pandas)
- 【python】データフレームの結合(pandas)