【问题标题】:Format the extracted covid vaccine data from website格式化从网站提取的 covid 疫苗数据
【发布时间】:2021-06-02 07:37:10
【问题描述】:

尝试将“疫苗数据”从 URL 格式化为 pandas 数据框

https://www.mygov.in/sites/default/files/covid/vaccine/covid_vaccine_timeline.json

这里是父网站

https://www.mygov.in/

样本输出

{"vaccine_data":[{"day":"2021-03-01","india_dose1":12256337,"india_dose2":2597799,"india_total_doses":14854136,"india_last_dose1":null,"india_last_dose2":null,"india_last_total_doses":null,"vacc_st_data":[{"st_name":"Andaman and Nicobar","state_id":"1","covid_state_name":"Andaman and Nicobar","covid_state_id":"35","dose1":"6581","dose2":"2556","total_doses":"9137","last_dose1":"","last_dose2":"","last_total_doses":""},{"st_name":"Andhra Pradesh","state_id":"2","covid_state_name":"Andhra Pradesh","covid_state_id":"28","dose1":"541202","dose2":"142431","total_doses":"683633","last_dose1":"","last_dose2":"","last_total_doses":""},{"st_name":"Arunachal Pradesh","state_id":"3","covid_state_name":"Arunachal Pradesh","covid_state_id":"12","dose1":"27572","dose2":"7309","total_doses":"34881","last_dose1":"","last_dose2":"","last_total_doses":""},{"st_name":"Assam","state_id":"4","covid_state_name":"Assam","covid_state_id":"18","dose1":"201640","dose2":"29159","total_doses":"230799","last_dose1":"","last_dose2":"","last_total_doses":""},{"st_name":"Bihar","state_id":"4","covid_state_name":"Bihar","covid_state_id":"10","dose1":"562270","dose2":"81079","total_doses":"643349","last_dose1":"","last_dose2":"","last_total_doses":""},{"st_name":"Chandigarh","state_id":"6","covid_state_name":"Chandigarh","covid_state_id":"4","dose1":"22424","dose2":"1899","total_doses":"24323","last_dose1":"","last_dose2":"","last_total_doses":""},

test = pd.read_json("/Users/dsg281/Downloads/vacin.json")

我正在尝试在我的数据框中提取以下格式的数据

【问题讨论】:

    标签: python dataframe web-scraping


    【解决方案1】:
    import pandas as pd
    import requests
    
    req=requests.get("https://www.mygov.in/sites/default/files/covid/vaccine/covid_vaccine_timeline.json")
    
    for i in range(len(req.json()["vaccine_data"])):
      df=pd.json_normalize(req.json()["vaccine_data"][i]['vacc_st_data'])
    print(df)
        
    

    【讨论】:

      【解决方案2】:

      这有帮助吗?

      import pandas as pd
      
      test = pd.read_json("https://www.mygov.in/sites/default/files/covid/vaccine/covid_vaccine_timeline.json")
      for day in test["vaccine_data"]:
          print(day)
      

      【讨论】:

      • 不,不满足要求
      猜你喜欢
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      • 2023-04-06
      • 1970-01-01
      相关资源
      最近更新 更多