前回に引き続き世界版のデータの前処理を続けます。
前回は日付の整形までを行いました。
今回は現在バラバラの188国分のデータセットを1つに結合し、先程作成した日付を新たな行として追加、カラムの並び替え・リネームを行えばRecoveredのデータセットを完成させます。
まずは188国分のデータセットを1つに結合します。
今回もconcatを使用します。
#バラバラの188国分のデータセットを1つに結合
c19w_Recovered = pd.concat(lo_df , sort=False)
c19w_Recovered.head()
c19w_Recovered.tail()
表示されたデータを見る限り問題なさそうですが、きちんと出来上がったデータの内容を確認しておこうと思います。
188国分のデータが2020/01/22〜2020/06/26の157日分あるので、29,516行のデータになっているはずです。
#データフレームc19w_Recoveredの内容確認
c19w_Recovered.info()
きちんと29,516行のデータが作成されていました。
さらに作成したデータフレームc19w_Recoveredに新しい列Date_newを追加します。
#データフレームc19w_Recoveredに新しい列Date_newを追加
c19w_Recovered["Date_new"] = pd.DataFrame(ymd_l)
c19w_Recovered.head()
c19w_Recovered.tail()
列Dateと列Date_newを比べて日付の変換・内容が一致していることが確認できます。
あとは
①不要になった列Dateの削除
②カラムの並び替え(Date_new・Country・Recovered)
③カラムのリネーム(Date_newをDateに変更)
④データフレームのcsvファイルへの書き込み・再読み込み
迄を一気に行います
#不要になった列Dateの削除
del c19w_Recovered["Date"]
#カラムの並び替え
c19w_Recovered = c19w_Recovered[["Date_new","Country","Recovered"]]
#カラムのリネーム
c19w_Recovered= c19w_Recovered.rename(columns={"Date_new" : "Date"})
#csvファイルへの書き込み
c19w_Recovered.to_csv("c19w_Recovered.csv",index =None , encoding = "utf=8")
#csvファイルからの読み込み
c19w_Recovered = pd.read_csv("c19w_Recovered.csv" , encoding = "utf=8")
c19w_Recovered.head()
これで188カ国分の157日分(2020/01/22〜2020/06/26)のRecovered(回復者)データセットが完成しました。
あとは同じ要領でconfirmed(感染者)、Deaths(死亡者)のデータセットを作成し、マージで横にそれぞれを結合すれば希望するデータセットの完成となります。
あと一息のところまで辿り着きましたが、続きは次回に行おうと思います。