データは財務省貿易統計からコーヒー生豆の輸入についてデータを取得します。
品目コードは090111000です。
データはcsvでダウンロードできます。
df = pd.read_csv('sample.csv',encoding='shift_jis')
日本語を使用するときはencording=’shift_jisをオプションでつけてください。
skiprowsのオプションで行を指定して読み込むことができます。
また、列を指定するusecolsも便利なので一緒に覚えておきましょう。
1~3列目を読み込む場合:usecols=[1, 3]
skiprows=8で9行目からデータが読み込まれます。
df = pd.read_csv('sample.csv',encoding='shift_jis',skiprows=8)
実際にデータの中身を見てみましょう。
これで読み込みは完了です。
今回はこの要領で2019年度と2020年度のデータを保存して、concat関数で結合したデータを元に解説していきます。
df_2019 = pd.read_csv('2019.csv',encoding='shift_jis')
df_2020 = pd.read_csv('2020.csv',encoding='shift_jis')
df_2019['年度']=2019
df_2020['年度']=2020
df_concat = pd.concat([df_2019, df_2020])
金額を1000で割る場合はこのような表現で実現できます。
df_concat['累計金額'] = df_concat['累計金額'].div(1000)
各列をある列の数値で割るやり方を使用するため、新しく計算用のデータフレームを作成します。
数量を累計金額で割る例を紹介します。
new=['累計第2数量','累計金額']
df_newは上記の2つの列になります。
df_new=df_concat[new]
金額で全ての列を割り、最後に金額の列をドロップします。
df_div = df_new.div(df_new['累計金額'], axis=0).drop('累計金額', axis=1)
df.to_csv('2019-2020.csv',index=False, encoding="shift-jis")
これで完了です。
pandasには他にも便利な使い方があるので、ぜひ使えるようになってください。
今回使ったテクニックで詳細も紹介しています。
↓行指定でデータを読み込み・保存する
↓読み込んだデータの結合