herrDeng網內搜尋

自訂搜尋

Ads

2022年4月24日 星期日

使用python pandas捉取covid 19 json格式資訊並畫本月份本土病例日線

  1. print('抓covid-19資料畫4月本土病例日線與回歸分析')
  2. url='https://od.cdc.gov.tw/eic/Day_Confirmation_Age_County_Gender_19CoV.json'
匯入套件
  1. import pandas as pd
  2. import matplotlib.pyplot as plt
  3. import numpy as np
pandas讀資料
  1. df=pd.read_json(url)
  2. df2022April=df[('2022/04/22'>=df['個案研判日']) & (df['個案研判日']>='2022/04/') & (df['是否為境外移入']=='否')]
完整列印
  1. with pd.option_context('display.max_rows', None, 'display.max_columns', None):
  2. print(df2022April)
篩去不用欄位
  1. df2=df2022April.drop(columns=['確定病名','縣市', '性別',\
  2. '是否為境外移入','年齡層'])
  3. array=df2.to_numpy()
整理資料用dict存
  1. dic={}
  2. n=0
  3. for x in array:
  4. z=x[0].split('/')[2]
  5. key=int(z)
  6. value=x[2]#因有加key '鄉鎮'
  7. n+=value
  8. if key not in dic:
  9. dic[key]=value
  10. else:
  11. dic[key]+=value
  12. print('2022/04本土病例=',n)
  13. print(dic)
迴歸分析
  1. data=np.array(list(dic.items()))
  2. coef=np.polyfit(data[:,0], data[:,1], 5)
  3. reg=np.poly1d(coef)
  4. print(reg)
畫統計圖
  1. plt.rcParams['font.family'] = ['Microsoft JhengHei']
  2. plt.scatter(data[:,0], data[:,1])
  3. plt.plot(data[:,0],reg(data[:,0]), color='r')
  4. plt.title('這是covid-19最近日線')
  5. plt.savefig('covid-19-April-days.jpg')
  6. plt.show()

沒有留言:

Related Posts Plugin for WordPress, Blogger...

熱門文章