图片缩略图

从约翰霍普金斯大学数据库加载COVID-19病例数据

版本0.63 (6.49 KB) 阿克塞尔Ahrens
该功能加载、处理和绘制来自约翰霍普金斯大学COVID-19数据库的数据。
5.0
6评级

16下载

更新2020年4月14日

从GitHub

视图版本历史

在GitHub上查看许可证

#从约翰霍普金斯大学数据库加载COVID-19病例数据

加载、处理和绘制来自约翰霍普金斯大学COVID-19数据库的数据。数据是自动从在线存储库读取的,因此需要internet连接。数据可以在这里找到:https://github.com/CSSEGISandData/COVID-19

#如何(参见runAll.m):
类型=“确认”;%“证实”,“死亡”,“恢复”
[dataMatrix] = readCoronaData(类型);
[dataTable, timeVector mergedData] = processCoronaData (dataMatrix);
plotCoronaData (timeVector mergedData,{“丹麦”,“我们”,“德国”,“中国”},类型);

引用作为

阿克塞尔Ahrens(2021)。从约翰霍普金斯大学数据库加载COVID-19病例数据GitHub (https://github.com/aahr/covid-19_data_analysis)。检索

意见及评分(23

扎AL-KHAZRAJI

精彩和实用的代码。
我会在runAll的末尾加上两行。m以获取给定国家(例如美国)的时间序列数据作为行向量
=============================
idx = find(strcmp(mergedData, "US"));
time_series = mergedData {idx 2} (1:)
============================
问候

阿克塞尔Ahrens

@safiul mollick:我尝试了几个最近的MATLAB版本,但没有晚到2016年。你有更新的版本吗?如果没有,你可以通过电子邮件联系我,我试图解决这个问题。

mollick safiul

我是新在这里,我使用Matlab 2016

我也有这个错误

未定义的函数或变量'newline'。

readCoronaData错误(第87行)
if m == 1 && contains(dataMatrix{m,n},newline)

runAll错误(第4行)
[dataMatrix] = readCoronaData(类型);

亚历克斯支持者

我更新到了MATLAB的最新版本。现在得到这个错误;
使用cell2table时出错(第69行)
VariableNames属性是字符向量的单元格数组。分配多个
变量名,在字符串数组或字符单元格数组中指定非空名称
向量。

processCoronaData错误(第21行)
dataTable = cell2table (dataMatrix(2:最终,:),VariableNames, varNames);

Wiebke夯击

阿克塞尔Ahrens

你用的是什么MATLAB版本?用最新版本的代码修复错误了吗?

亚历克斯支持者

谢谢阿克塞尔!

我得到这个错误,有什么想法吗?

未定义的函数或变量'newline'。

readCoronaData错误(第83行)
if m == 1 && contains(dataMatrix{m,n},newline)

或沙密

Hartwig困难

非常感谢阿克塞尔的代码,非常有趣
今天第一次使用它与commit 18ef41f & Matlab 2019a(9.6,更新5)

我确实遇到了以下问题:

1.processCoronaData中的字符串和单元格数组的句柄

错误使用strrep
单元格元素必须是字符向量。
processCoronaData错误(第17行)
varNames = strrep (varNames ,'/','_');
runAll错误(第7行)
[dataTable, timeVector mergedData] = processCoronaData (dataMatrix);

——>通过使用

STR = strrep2(STR, old, new)
str = cellfun(@(str) rep(str, old, new), str, 'UniformOutput', false);
函数STR = rep(STR, old, new)
如果ischar (str)
STR = strrep(STR,旧的,新的);
结束
https://www.gomatlab.de/strrep-cell-elements-must-be-character-arrays-t44174.html

2.在processCoronaData中的今天数据集中的数据

25: for m = 1:size(dataMatrix,1)
26: for n = 1:size(dataMatrix,2)

为我修复->跳过最后一行'马拉维'条目和数据矩阵的最后一列
for m = 1:size(dataMatrix,1)-1
for n = 1:size(dataMatrix,2)-1

3.分配给时间向量时,时间格式有问题
38: timeVector(n-4) = dataMatrix{1,n};

为我解决:
dataMatrix {m, n} = datetime (dataMatrix {m, n},“InputFormat”、“MM / dd / yy”);

干杯
Hartwig

从今天开始,我得到以下错误:
使用cell2table时出错(第69行)
VariableNames属性是字符向量的单元格数组。要指定多个变量名,请在
字符串数组或字符向量的单元格数组。

processCoronaData错误(第311行)
dataTable = cell2table (dataMatrix(2:最终,:),VariableNames, varNames);

问题是数据矩阵没有被正确读取。改变
如果包含(lineBreakData(lineBreakIdx+2:end-1),'"') %在州/省中有一个逗号

如果包含(lineBreakData(lineBreakIdx:end-1),'"') %在州/省中有一个逗号
在read函数中为我修复这个问题。但是,我不知道是否有任何副作用。

我想这个问题来自你们的Matlab版本,特别是cell2table函数。
从R2019b开始,你可以指定MATLAB无效的表变量名®标识符。这样的变量名可以包括空格、非ascii字符,并且可以使用任何字符作为前导字符。当你访问这样一个变量名时,用引号括起来。//www.tatmou.com/help/matlab/ref/table.html

阿克塞尔Ahrens

@Christopher:这似乎只是Mac OS的问题。但现在应该解决了。

克里斯托弗·霍恩

@Axel
我用的是Mac OSX卡特琳娜10.15.4。只是试着R2019a。同样的错误,但是错误信息与Holger在3月25日报告的一样。

阿克塞尔Ahrens

@Christopher:这是奇数。我将在10分钟内添加一个补丁。

克里斯托弗·霍恩

嗨阿克塞尔
我目前使用的是R2018B。
在我看来,这是反斜杠导致问题时,我运行。不管怎样,我可以在Matlab中自己修正它。

阿克塞尔Ahrens

嗨,Christopher,对我来说,在当前的GitHub版本中一切都很顺利。你用的是什么MATLAB版本?

克里斯托弗·霍恩

嗨阿克塞尔
今天下载的2020-03-30
processCoronaData中仍然存在问题

> > runAll
使用cell2table时出错(第57行)
“省/州”不是一个有效的变量名。

processCoronaData错误(第16行)
dataTable = cell2table (dataMatrix(2:最终,:),VariableNames, varNames);

runAll错误(第6行)
[dataTable, timeVector mergedData] = processCoronaData (dataMatrix);

阿克塞尔Ahrens

@Holger:没错。他们又改变了。其固定。我每天至少检查一次代码以保持它的运行。

Holger

你好阿克塞尔,我取了你的最新版本-但问题仍然存在。我不确定JHU的数据格式是否有进一步的变化……非常感谢您的努力!

阿克塞尔Ahrens

嗨Holger。试试最新的版本。约翰霍普金斯存储库数据格式发生了变化。如果还是不行,请联系。

Holger

使用cell2table时出错(第58行)
'Province/State'不是一个有效的表变量名。有关isvarname或matlab.lang.makeValidName的更多信息,请参阅文档。

processCoronaData错误(第16行)
dataTable = cell2table (dataMatrix(2:最终,:),VariableNames, varNames);

runAll错误(第6行)
[dataTable, timeVector mergedData] = processCoronaData (dataMatrix);

马克•史密斯

谢谢你提供的这组函数。这些功能允许我们对Covid-19跟踪和预测进行定制。

MATLAB版本兼容性
创建R2019b
兼容R2018b及后续版本
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!