拙劣的Excel进口可能导致15,841起英国新冠肺炎案件的损失

2020-10-07 16:30:59

英国公共卫生周日承认,由于一个技术问题,该机构最近几天少报了15,841例新冠肺炎感染病例。该机构表示,丢失的阳性检测是在9月25日至10月2日期间进行的,此后已被添加到国家统计数据中。

PHE没有解释技术问题的性质,但一些英国新闻来源将矛头指向Microsoft Excel。以下是“卫报”对这一问题的描述:

PHE负责整理公共和私人实验室的测试结果,并发布每日更新的病例计数和进行的测试。

卫报了解到,在这种情况下,一个实验室以CSV文件的形式将其每日测试报告发送给PHE-CSV文件是最简单的数据库格式,只是一个用逗号分隔的值列表。然后将该报告加载到Microsoft Excel中,并将底部的新测试添加到主数据库中。

但是,虽然CSV文件可以是任何大小,但Microsoft Excel文件的长度只能为1,048,576行。当打开长度大于该长度的CSV文件时,底部的行将被截断并且不再显示。这意味着,一旦实验室进行了100多万次测试,其报告未能被PHE阅读只是个时间问题。

该机构表示,他们将采取预防措施,以确保类似的错误不会在未来发生。

除了在官方统计数据中低估了COVID病例的数量外,这一故障还阻碍了接触者追踪工作,因为关于丢失的阳性检测的数据没有传递给接触者追踪器。官员们强调,测试对象自己也像往常一样获得了测试结果。

英国目前正处于冠状病毒感染的第二次激增之中。该国的感染在4月份达到顶峰,然后在7月份下降到每天几百人。但在过去的一个月里,病例激增,最近几天,英国每天报告超过1万例新病例(包括之前失踪的病例)。这大约相当于美国的人均数量。

PHE已经建立了一个自动过程,将这些数据合并到Excel模板中,以便随后可以将其上传到中央系统,并提供给NHS测试和跟踪小组以及其他政府计算机仪表盘。

问题是,PHE开发人员选择了一种旧的文件格式-称为XLS。

因此,每个模板只能处理大约65,000行数据,而不是Excel实际能够处理的100多万行。

由于每个测试结果都创建了几行数据,因此实际上这意味着每个模板被限制在大约1400个案例。当达到这个总数时,更多的病例就被简单地排除了。

看起来它实际上比第一次听起来更糟糕。据BBC报道,这些.csv文件被保存为.xls文件,即老式的Excel,并且被截断的行数是65k,而不是1M。在我看来,这非常像是有人决定聪明地编写一个VBA宏来整理数据。或者NHS仍在使用Excel2000..。

身处IT行业,知道做每一件事的正确方式,并拥有你想做的一切所需的一切,这是一件很好的事情。当你的工作是将数据从一个组织转移到另一个组织,而你被一堆相互冲突的要求压得喘不过气来时,这些要求的风险很高,没有预算或时间去雇佣数据库应用程序开发人员,其他所有人都在拖延,而你是最后一个愿意想办法完成这项任务的人,因为它必须完成,而且没有人真正关心你是如何做的,只要你得到了它,并可以转移到下一件事情上,这也是一件非常重要的事情。在这种情况下,您唯一的希望是任何错误都可以在以后整理出来。

您想用多少钱打赌电子表格位于\nhsfilesuserstimcovidnewdata这样的文件夹中,其中有一堆文件,它们的名称类似于BIMERVANCE-DATA-CURRENT.xlsx DEVERMANCE-DATA-NEW-COPY-Copy.xlsx DEVERVANCE-Data-十月-COPY(2).xlsx。

对我来说,当谈到Excel时,我总觉得自己生活在某种平行宇宙中。想象一下,生活在这样一个世界里,你和一群精挑细选的人都知道,有比用拳头击打更好的方法可以把螺丝钉钉进墙上。然而,世界上99%的人都是用手在墙上打螺丝,

因为不幸的是,合适的工具过于复杂。我的办公室里还有一些人不能理解Excel,我应该让他们自由使用Matlab或R?即使Excel会把事情搞得一团糟,但一般说来,由于电子表格被大众广泛使用,比一些软件工具要有用得多,这些软件工具只能由几个受过黑魔法训练的追随者使用。