Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python数据集计算_Python - Fatal编程技术网

Python数据集计算

Python数据集计算,python,Python,我有一个数据集,记录了不同的几周以及该周的新登革热病例,我应该计算每周的感染率和恢复率。感染率可通过将新感染患者的数量除以该周的易感人群计算得出,而恢复率可通过将新恢复患者的数量除以该周的感染人群计算得出。感染率是相对简单的,但对于恢复率,我必须考虑到感染的患者需要整整两周的时间才能恢复,我被卡住了。任何帮助都将不胜感激 t_pop = 4*10**6 s_pop = t_pop i_pop = 0 r_pop = 0 weeks = 0 #Infection Rate for index,

我有一个数据集,记录了不同的几周以及该周的新登革热病例,我应该计算每周的感染率和恢复率。感染率可通过将新感染患者的数量除以该周的易感人群计算得出,而恢复率可通过将新恢复患者的数量除以该周的感染人群计算得出。感染率是相对简单的,但对于恢复率,我必须考虑到感染的患者需要整整两周的时间才能恢复,我被卡住了。任何帮助都将不胜感激

t_pop = 4*10**6
s_pop = t_pop
i_pop = 0
r_pop = 0
weeks = 0

#Infection Rate
for index, row in data.iterrows():
    new_i = row['New Cases']
    s_pop -= new_i
    weeks += 1
    infection_rate = float(new_i)/float(s_pop)
    print('Week', weeks, ':' ,infection_rate)

*注:t_pop指的是我们假设为400万的总人口,s_pop指的是有感染登革热风险的人口,i_pop指的是受感染的人口

您可以创建一个字典来存储每周的数据,然后在需要计算恢复率时使用它来引用。例如:

dengue_dict = {}
dengue_dict["Week 1"] = {"Infection Rate": infection_rate, "Recovery Rate": None}
我一开始不使用,因为至少两周后恢复率才会下降。稍后,您可以更新周数,也可以立即添加周数。下面是第3周的一个示例:

recovery_rate = dengue_dict["Week 1"]["Infection Rate"]/infection_rate
然后更新字典中的条目:

dengue_dict["Week 3"]["Recovery Rate"] = recovery_rate

这是一个有效的问题,但它本身不是机器学习,是不是…@icedwater关于机器学习的一个更大问题的一部分对于简单(矩形)数据操作,请看python熊猫。它有一个名为
shift
的函数,可能会对您有进一步的帮助:@Tim但我现在需要的是找到一种方法,将患者需要2周才能恢复的事实考虑到恢复率中,而不是改变太多的数据集,我来这里只是想说,这更多的是数学而不是机器学习本身——既然你每周都有新的病例,那么恢复率不就是两周前的新病例吗?(编辑:当然是除以那周的感染人数。)