python的bioc数据结构及编解码器

bioc的Python项目详细描述


Build statusLatest version on PyPIDownloadsCoverageLicense

BioC XML / JSON format可用于共享 文本文档和注释。

bioc公开标准库用户熟悉的api marshalpickle模块。

在github上开发biochttps://github.com/yfpeng/bioc

开始

正在安装bioc

$ pip install bioc

xml

编码bioc集合对象collection

importbioc# Serialize ``collection`` to a BioC formatted ``str``.bioc.dumps(collection)# Serialize ``collection`` as a BioC formatted stream to ``fp``.withopen(filename,'w')asfpbioc.dump(collection,fp)

压缩编码:

importbiocbioc.dumps(collection,pretty_print=False)

增量生物序列化:

importbiocwithbioc.BioCXMLDocumentWriter(filename)aswriter:writer.write_collection_info(collection)fordocumentincollection.documents:writer.write_document(document)

解码bioc xml文件:

importbioc# Deserialize ``s`` to a BioC collection object.collection=bioc.loads(s)# Deserialize ``fp`` to a BioC collection object.withopen(filename,'r')asfp:collection=bioc.load(fp)

增量解码bioc xml文件:

importbiocwithbioc.BioCXMLDocumentReader(filename)asreader:collection_info=reader.get_collection_info()fordocumentinreader:# process document...

get_collection_info可以在构造BioCXMLDocumentReader之后随时调用。

与python协同程序一起,这可以用于以异步、非阻塞的方式生成bioc xml。

importbiocwithbioc.BioCXMLDocumentReader(source)asreader, \
     bioc.BioCXMLDocumentWriter(dest)aswriter:collection_info=reader.get_collection_info()writer.write_collection_info(collection_info)fordocumentinreader:# modify the document...writer.write_document(document)

json

编码bioc集合对象collection

importbiocjson# Serialize ``collection`` to a BioC Json formatted ``str``.biocjson.dumps(collection,indent=2)# Serialize ``collection`` as a BioC Json formatted stream to ``fp``.withopen(filename,'w')asfpbiocjson.dump(collection,fp,indent=2)

压缩编码:

importbiocjsonbiocjson.dumps(collection)

解码bioc json文件:

importbiocjson# Deserialize ``s`` to a BioC collection object.collection=biocjson.loads(s)# Deserialize ``fp`` to a BioC collection object.withopen(filename,'r')asfp:collection=biocjson.load(fp)

json行

增量编码bioc结构:

frombioc.biocjsonimportBioCJsonIterWriterwithBioCJsonIterWriter(filename,level=bioc.PASSAGE)aswriter:fordocincollection.documents:forpassageindoc.passages:writer.write(passage)

增量解码bico json行文件:

frombioc.biocjsonimportBioCJsonIterReaderwithBioCJsonIterReader(filename,level=bioc.PASSAGE)asreader:forpassageinreader:# process passage...

要求

开发人员

确认

网页

官方bioc网页上有最新的说明, 以bioc格式编写的代码和语料库,以及基于 与生物有关。

参考

  • 科莫,D.C.,多安,R.I.,西卡雷斯,P.,科恩,K.B.,克莱林格,M., Leitner,F.,Lu,Z.,Peng,Y.,Rinaldi,F.,Tori,M.,Valencia,V., Versboor,K.,Wiegers,T.C.,Wu,C.H.,Wilbur,W.J.(2013)生物:A 生物医学文本互操作的极简方法 处理。数据库:生物数据库和 策展。
  • Peng,Y.,Tudor,C.,Tori,M.,Wu,C.H.,Vijay Shanker,K.(2014年)ISIMP 在bioc标准格式中:增强句子的互操作性 简化系统。数据库:生物数据库杂志 以及策展。
  • Marques,M.,Rinaldi,F.(2012)Pyboco: 生物核心。在生物处理IV研讨会上。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java WebClient请求级别超时抛出名为default onErrorDropped的运算符   java JAXB外部绑定文件错误   Freemarker中的java转义宏参数值   java正在同步来自不同对象{已编辑}的线程   java如何在另一个类上更新活动中的元素   java Hibernate连接查询   java可以使用Apache Crunch创建类似于图形的数据结构吗?   java在JLabel的开头加上3个点   java 安卓应用程序显示线程错误   java@RequestBody在Spring中总是空的   java Android异步任务永远不会结束   具有多个属性的java Jaxws枚举   java中的安卓 Stripe InvalidRequestException   多线程java。util。非多线程程序中的ConcurrentModificationException   Minecraft Java插件如何删除HashMap中存储的所有块   空Java字符串的大小   从AJP连接器请求检索Shibboleth属性的java   oracle11g将Java类文件加载到Oracle数据库