経済統計の使い方
統計初心者の社会人向けに、経済データの解説をしています。「まとめページ」をご覧くだされば、全体的な内容がわかると思います。
python

【python】シリーズとデータフレームの作り方(pandas)

データフレーム

データフレームの使い方を説明します。データフレームは変数であるシリーズが集まったものだと考えることができます。

経済統計の使い方では、統計データの入手法から分析法まで解説しています。

統計学・計量経済学のまとめ 統計学に関するまとめのサイトです。 教科書 「回帰分析から学ぶ計量経済学-Excelで読み解く経済の仕組み」 回帰分...

シリーズ

シリーズとは、系列という意味で、名前をつけることができる変数と考えるとわかりやすいと思います。

以下のSeries関数で作成できます。丸カッコの中に四角カッコがあってややこしいですが、丸カッコはSeries関数を表し、四角カッコはリスト(複数の値をまとめて扱うもの)を表します。

x=pd.Series([1,2,3,4])

複数の値をまとめて扱うものは書き換えできないタプルもありますが、これを使ってシリーズを作ることもできます。この場合は丸カッコを2回使うことになります。ただ、タプルは数値の変更ができないので、リストを使えば問題ないです。

x=pd.Series((1,2,3,4))

シリーズにはnameメソッドで名前を付けることができ、データフレームにする場合にカラム名になります。x.name=”人口”などとします。

データフレーム

データフレームはシリーズの集まりと解釈できます。複数のシリーズを列方向に組み合わせたものと考えるのがよいですが、値を入力する場合は、1行ずつのリストを積み重ねた形で入力します。

上の表を入力するには以下の通りとなります。丸カッコの中は、リストのリスト([[リスト1],[リスト2],[リスト3]])の形です。

df=pd.DataFrame([[400,410,420],[330,340,350],[240,250,260]])

データフレームには列にカラム名(列名)、行にインデックス(行ラベル)をつけることができます。

カラム名インデックス(行ラベル)も同時に入力する場合は以下のようになります。インデックス(index=)とカラム名(columns=)をリストの形で加えます。

df = pd.DataFrame(
    [[400, 410, 420], [330, 340, 350], [240, 250, 260]],
    index=["A国", "B国", "C国"],
    columns=["2000", "2010", "2020"]
)

直感的に入力するには、列(カラム)ごとに入力した方がよいかもしれません。カラム名とデータを同時に入力するには、以下の形式となります。まずDataFrame関数の丸カッコがあります。その中は辞書形式({キー:値})となっていて、値の部分がリストの四角カッコになっています。

値だけを入力する場合と違って列ごとの入力となります。

df1 = pd.DataFrame({
    "国名": ["A国", "B国","C国"],
    "2000": [400, 330,240],
    "2010": [410, 340,250],
    "2020": [420, 350,260]
})

結果は以下の通りです。

 国名  2000  2010  2020
0  A国   400   410   420
1  B国   330   340   350
2  C国   240   250   260

国名も一つのシリーズになっていますが、これをインデックス(行ラベル)に変えたい場合は、を使います。set_index関数を使います。

df1 = df1.set_index("国名")

出力結果は以下の通りです。

      2000  2010  2020
国名                  
A国   400   410   420
B国   330   340   350
C国   240   250   260

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA