操作说明

py-mst-dbscan

mst-dbscan算法使用Python实现,算法相关原理和具体细节,请参考:

2018 Characterizing Diffusion Dynamics of Disease Clustering A Modified Space Time DBSCAN --- MST DBSCAN Algorithm

description

wst-dbscan-test包括八个文件夹(data、gxresult、part1、part1_input、part1_output、part2、part2_input、part2_output)、参考文献和ppt(建议先看ppt了解文章的核心和我所做的工作)

  • data:包括高雄市疾病数据(该数据与论文数据有所不同需要师弟师妹们自行校正),台湾shp数据,split.py(数据分割代码,代码通用性不高,希望师弟师妹们根据论文自己写出更好的分割的代码)

  • gxresult:这是我跑出来的结果,input只包含部分数据,output中是最终结果数据。

  • part1:"stdbscan"文件夹中的代码是在github上下载的stdbscan代码,"Wstdbscan"是根据文章提供的mst-dbscan伪代码复现的(复现结果和文章有差异,希望师弟师妹们帮我找出代码中的问题,一起完善)

  • part2:复现define transmission cluster(和文章的提供的伪代码有差别,但是逻辑上应该是正确的,结果与文章有差异,希望师弟师妹们提出解决方法一起完善这份代码)

  • "part1_input、part1_output、part2_input、part2_output"输入输出数据(将分割好后的疾病数据放入part1_input中)

Windows

安装anaconda

  • 配置py2.7环境变量(python2.7在ArcGIS目录下)

  • 下载安装anaconda (python2.7 version) 下载链接

  • 一般anaconda里包含代码所需要的包,如果缺少,请自行下载

Data pre-procession

根据疾病潜伏期的时间阈值将原始病例数据分割成n个时期。

  • 数据分割python代码(wst-dbscan\data\split.py)

MST-DBSCAN

对每个时期的疾病事件进行时空密度聚类(mst-dbscan)。

  • 将分割好后的病例数据作为输入数据 (Part1_input)对每个时期的病例数据进行聚类

  • 运行聚类python代码(wst-dbscan\Part1\Wstdbscan\Wmain.py)

Define diffusion

根据聚类关系,确认每个时期的扩散类型。

  • 运行part2 python代码(wst-dbscan\Part2\main.py)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容