线缆19工具和实用工具
cord-19-tools的Python项目详细描述
COVID-19数据工具
使covid19数据对每个人都稍微容易一点的工具!如果你A)认为在你的研究中有什么有用的东西,或者B)有一些有用的代码可以贡献,那么尽快发布一个问题或者公关,这样我们就可以分享你的代码了!在
安装
pip install cord-19-tools
一定要有最新版本!我会不断更新,以确保用户得到正确的数据!语义学者每周五更新一次数据集,所以周五和周六一定要重新下载数据!在
演示
Demonstration Notebook on colab
下载数据
要下载和提取数据,请使用download
函数:
现在只需从CORD-19 dataset下载数据,不包括元数据(将在一天结束时提供),提取所有tar文件,并将它们放在一个目录中
Paperset类
这是一个用于从CORD-19 dataset懒洋洋地加载文件的类。在
# no `/` at the end please!data=cotools.Paperset("data/comm_use_subset")# indexes with intspprint(data[0])# returns a dict# and slices!pprint(data[:2])# returns a list of dictsprint(len(data))# takes about 5gb in memoryalldata=data[:]
让我们来谈谈它是如何工作的,以及为什么它不占用大量内存。在对数据建立索引之前,文件实际上不会加载到python 。在编制索引时,这些索引处的文件将被读入python,生成一个字典列表。这意味着您在处理低资源系统时仍然可以做出贡献。在
获取文本和摘要
对于文本,有text
函数,它从单个文档返回文本,texts
函数从多个文档返回文本,还有{
print(cotools.text(data[0]))print(cotools.texts(data[12:18]))alltext=data.texts()# alltext = cotools.texts(alldata)
对于摘要,我们有一个类似的API:
print(cotools.abstract(data[0]))print(cotools.abstracts(data[12:18]))allabs=data.abstracts()# allabs = cotools.abstracts(alldata)
操纵
您还可以使用Paperset.apply
方法操作文档:
keys=comm_use.apply(lambdax:list(x.keys()))# then lets combine them into a setprint(set(sum(keys,[])))
搜索
您可以使用列表或嵌套列表进行搜索!更多的例子见演示笔记本!在
txt=[["covid","novel coronavirus"],["ventilator","cpap","bipap"]]x=cotools.search(comm_use,txt)print(len(x))print(len(cotools.search(comm_use,txt[0])))print(len(cotools.search(comm_use,txt[-1])))
托多
- [x] 元数据
- []其他数据,例如来自this aggregate site和this google spreadsheet的数据
- 项目
标签: