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关闭域实例   java如何获得JTable列的头组件的最小首选宽度,以便其大小不能小于该值?   使用时使用java Jsoup。孩子们()。跳出边界性感觉   类静态初始化块内的java类用法   java ParseCrashReporting*。在其Android SDK的1.11.0中找不到jar   javahsqldb组织。springframework。刀。复杂选择上的TransientDataAccessResourceException   java EJB 3.1@SessionScoped Bean holding登录信息注销问题   java如何跟踪重复警报何时关闭并更新设置值?   具有可变参数类型的java接口方法   使用openstack4j计算查询的java连接超时   java这是一种双向的一对一关系吗?   java如何重置EventStream中的最后一个累积值?   java如何在超级抽象类中使用@Bean?   使用多部分上传java图像   java列出了已解析的SQL SELECT语句的所有表/列   java使用内部类实现单元测试类的正确方法   使用AWS API网关的java ContentType飞行前处理与自己的Rest服务器   调用dispose()后重新创建JinternalFrame对象   字符编码通过java编写一个以UTF8编码的文本文件,其中包含BOM表。尼奥