收集与分析腾讯国内外疫情数据

#导入相关库 import json import requests import numpy as np import pandas as pd import matplo...

#导入相关库
import json
import requests
import numpy as np
import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
from scipy.optimize import leastsq
url="https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5"
url2="https://view.inews.qq.com/g2/getOnsInfo?name=disease_foreign"
#伪装请求头
headers ={'User-Agent':'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}
#获取网页数据
r=requests.get(url,timeout=30,headers=headers)
req=requests.get(url2,timeout=30,headers=headers)
#将数据json化去掉/,方便操作
data = json.loads(r.text)
data = json.loads(data['data'])
data3 = json.loads(req.text)
data3 = json.loads(data3['data'])
#print(data)查看爬取数据
#从爬取的信息中提取所需信息
china=data['areaTree'][0]['children']
#爬取各大国家疫情情况
country=data3['countryAddConfirmRankList']
#print(china)
chinaTotals="确诊人数:"+str(data['chinaTotal']['confirm'])+
           "疑似人数:"+str(data['chinaTotal']['suspect'])+
           "死亡人数:"+str(data['chinaTotal']['dead'])+
           "治愈人数:"+str(data['chinaTotal']['heal'])+
           "更新日期:"+data['lastUpdateTime']
print(chinaTotals)
#获取中国各省名称,确诊人数,疑似人数,死亡人数,治愈人数
#建立空列表保存数据
Total=[]
for i in range(len(china)):
    Total.append([china[i]['name'],china[i]['total']['confirm'],
                 china[i]['total']['suspect'],china[i]['total']['dead'],
                  china[i]['total']['heal']])
#print(Total)
#获取各国新增加确诊人数
#建立空列表保存数据
Country=[]
for i in range(len(country)):
    Country.append([country[i]['nation'],country[i]['addConfirm']])
#print(Country)
#将数据转换为二维表方便数据清洗和进一步的数据可视化
data1=pd.DataFrame(Total,index=range(1,35),columns=['省份','确诊人数','疑似人数','死亡人数','治愈人数'])
data4=pd.DataFrame(Country,index=range(1,11),columns=['国家','新增确诊人数'])
#print(data1)查看输出二维表是否出错
#数据清洗
#查找是否有缺失值
data1.isnull()
data4.isnull()
#只显示存在缺失的行列
data1[data1.isnull().values==True]
data4[data4.isnull().values==True]
#查找重复值
data1.duplicated()
data4.duplicated()
#删除重复值
data2=data1.drop_duplicates()
data5=data4.drop_duplicates()
#统计空值
data2.isna()
data5.isna()
print(data2)
print(data5)
#进行数据可视化
#正常显示中文
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
#正常显示负号
plt.rcParams['axes.unicode_minus']=False
#创建画布
plt.figure(figsize=(10,10))#设置画布大小
#绘制子图1
axes1=plt.subplot(2,2,1)
X=data2.loc[:,'省份']
Y=data2.loc[:,'确诊人数']
#绘制柱状图
plt.bar(X,Y)
#标题
plt.title('我国各省至今确诊人数')
#x轴名称
plt.xlabel('省份')
#y轴名称
plt.ylabel('确诊人数')
#绘制子图2
axes2=plt.subplot(2,2,2)
#绘制确诊人数,疑似人数,死亡人数,治愈人数的饼图
a=[data['chinaTotal']['confirm'],data['chinaTotal']['suspect'],
   data['chinaTotal']['dead'],data['chinaTotal']['heal']]
#绘制饼图
plt.pie(a,labels=['确诊人数','疑似人数','死亡人数','治愈人数'])
#绘制子图3
axes3=plt.subplot(2,1,2)
f=data5.loc[:,'国家']
g=data5.loc[:,'新增确诊人数']
#绘制柱状图
plt.bar(f,g)
plt.title("国外新增确诊人数")
plt.show()
#绘制散点图建立回归方程
X=data2.loc[:,'确诊人数']
Y=data2.loc[:,'治愈人数']
X.corr(Y)
def func(params,x):
    k,b=params
    return k*x+b
#设误差函数
def error(params,x,y):
    return func(params,x)-y
#主程序,输出最后的结果
def main():
    plt.figure()
    p0=[1,1]
    Para=leastsq(error,p0,args=(X,Y))
    k,b=Para[0]
    print("k={:.2f},b={:.2f}".format(k,b))
    plt.scatter(X,Y,color="green",label="疫情数据",linewidth=2)
    #画拟合曲线
    x=np.linspace(1,70000,1000)
    y=k*x+b
    plt.plot(x,y,color="red",label="拟合曲线",linewidth=2)
    plt.legend()#绘制图例
    plt.grid()
    plt.show()
main()
#保存数据
dataframe_file.to_csv("疫情数据.csv", index=False) 

本文来自作者[新闻资讯]投稿,不代表辣之友号立场,如若转载,请注明出处:https://lzysp.cn/zsfx/202509-2518.html

(14)

文章推荐

  • 美国制造病毒的三个阶段及其引发的三次全球疫情探讨

    美国制造病毒的三个阶段和三次全球疫情——美国人造病毒大事记的分析和结论老佛爷(2022年11月2日)内容提要:10月22日,英国媒体发表文章,详细列述了美国人工制造新冠病毒的大事记。本文根据此大事记说明:SARS-Cov-1(非典肺炎病毒)、MERS(中东呼

    2025年09月05日
    18
  • 北京市新增4例本土新冠确诊病例 朝阳两校区及16所学校紧急停课

    原标题:北京市新增4例本土新冠确诊病例朝阳两涉疫校区及16所学校停课昨日(2日)0时至11时,北京市新增4例本土新冠肺炎确诊病例,为同一家人;确诊病例轨迹涉及四区两校,其中,朝阳区两涉疫校区及16所相关学校停课;确诊病例均住在昌平区天通苑北街道天通苑北二区,天通北苑第二社区昨日起升级为中风险地

    2025年09月07日
    16
  • 疫情前演唱会票价多少钱(因为疫情演唱会门票退不退呢)

    黄牛透露手中演唱会票源于主办方演唱会门票一般会流向哪几个地方_百...演唱会门票一般会流向以下几个地方:演唱会团队人员:这部分门票通常用于奖励演唱会的工作人员,包括演员、乐手、舞台设计、灯光音响等团队成员,以及他们的亲朋好友。主办方团队:主办方作为演唱会的组

    2025年09月24日
    13
  • 【赣县区疫情50例病例,赣县区疫情50例病例活动轨迹】

    寨卡病毒中国有吗1、年2月15日,广东省卫生和计划生育委员会通报,广东省确诊一例输入性寨卡病毒感染病例,这是中国内地第二例寨卡病毒感染病例。以下是对该病例的流行病学分析:患者基本情况患者信息:男性,28岁,广东省江门市人,近年在委内瑞拉经商(该国为寨卡病毒

    2025年09月26日
    10
  • 梅赛德斯奔驰/梅赛德斯奔驰官网

    梅赛德斯-奔驰最困难的几年梅赛德斯-奔驰品牌发展历程中面临重大困境的时期主要包括以下四个阶段:1905年:合作终止与财产没收危机1905年,梅赛德斯品牌命名者埃米尔·耶利内克(EmilJellinek)与戴姆勒的独家合作终止,导致奔驰失去对“梅赛德斯”名称

    2025年09月27日
    20
  • 阿斯顿马丁车图片/阿斯顿马丁车价one77

    依旧是007的最佳拍档?暴力与艺术的结合,超级GT—阿斯顿马丁DBS1、阿斯顿马丁DBS和DB11的主要区别如下:设计语言:DBS:作为旗舰超级GT车型,其设计风格激进,线条犀利,前脸设计极具冲击力,标志性的大进气格栅彰显力量与速度,整体呈现出猛兽出击般的

    2025年09月28日
    11
  • 【二手车处理网,二手泵车处理网】

    二手车逾期了被拖走了怎么处理1、汽车贷款没有上升,当汽车被拖走时,用户仍然需要偿还。用户需要明确的是,逾期未还款本身的用户是过错方,另一方拖走汽车只是为了挽回部分损失。用户需要尽快检查汽车贷款签订的合同,到借款人,并与负责人协商还款。汽车贷款是指贷款人向申请

    2025年09月30日
    8
  • 特斯拉model是什么意思,特斯拉model啥意思

    modely什么意思啊?特斯拉modely召回了吗?Model是特斯拉旗下各款车型的通用名称,其中,ModelY中的Y代表SUV车型,与ModelS(轿车)、ModelX(SUV)、Model3(轿车)共同构成了特斯拉的主要产品线。ModelY自2019年3

    2025年10月02日
    12
  • 哈弗神兽报价和图片,哈弗神兽汽车新款2021款报价

    哈弗神兽有哪些功能哈弗神兽作为一款功能强大的汽车,配备了多种先进的驾驶辅助系统,为驾驶者提供了更加安全和稳定的驾驶体验。这些系统包括车身稳定控制系统、胎压监测功能、制动力分配系统、刹车辅助系统以及牵引力控制系统等,确保了驾驶过程中的稳定性和安全性。哈弗神兽是

    2025年10月02日
    10
  • 钣金喷漆当天能取车吗,凹陷修复一般多少钱

    4s店维修大概几天能取车S店维修取车时间受事故严重程度、定损流程等因素影响,一般在两三天到一个月以上不等。如果是轻微事故,如车身小剐小蹭,通常只需两三天就能修好取车。因为这类损伤维修工序简单,对车辆整体性能影响较小。若事故较为严重,涉及车辆多个部件损坏,维修

    2025年10月06日
    9

发表回复

本站作者后才能评论

评论列表(4条)

  • 新闻资讯
    新闻资讯 2025年09月09日

    我是辣之友号的签约作者“新闻资讯”!

  • 新闻资讯
    新闻资讯 2025年09月09日

    希望本篇文章《收集与分析腾讯国内外疫情数据》能对你有所帮助!

  • 新闻资讯
    新闻资讯 2025年09月09日

    本站[辣之友号]内容主要涵盖:国足,欧洲杯,世界杯,篮球,欧冠,亚冠,英超,足球,综合体育

  • 新闻资讯
    新闻资讯 2025年09月09日

    本文概览:#导入相关库 import json import requests import numpy as np import pandas as pd import matplo...