FunGuild 数据库简介
FUNGulid = Fungi + Functional + Guild , 是一个真菌的功能注释的数据库,目前数据库中涵盖了超过12000个真菌的功能注释信息;
网址如下:
http://www.stbates.org/guilds/app.php
对于数据库而言,最直接的就是看一下数据库中存储的字段信息;
点击下面的链接,可以返回FUNGuild 数据库中所有的记录,返回的文件格式是json,
这种格式是网络中数据传输的标准格式,但是对于我们来讲看起来不够直观,可以通过脚本语言处理,格式化成表格形式,
如何编程处理就不细说,直接看结果:

各个字段的信息解释如下:
taxon : 物种名称,和NCBI Taxonomy 数据库中的一致
taxonomicLevel :物种名称对应的界,门,纲,目,科,属,种 分类学水平,这里用数字标识; 0 = keyword, 3 = Phylum, 4 = Subphylum, 5 = Class, 6 = Subclass, 7 = Order, 8 = Suborder, 9 = Family, 10 = Subfamily, 11 = Tribe, 12 = Subtribe, 13 = Genus, 15 = Subgenus, 16 = Section, 17 = Subsection, 18 = Series , 19 = Subseries, 20 = Species, 21 = Subspecies, 22 = Variety, 23 = Subvariety, 24 = Form, 25 = Subform, 26 = Form Species
trophicMode : 字面意思,营养方式,共有3大类,第一类 Pathotroph, 病理寄生,从宿主细胞中接受养分,并对宿主细胞有不利的影响,损人利己型,比如寄生在活体上的真菌;第二类Saprotroph; 腐生,生活环境为枯枝落叶或者有机质含量丰富的土壤,典型的是蘑菇类真菌;第三类, Symbiotroph,共生型,和宿主交换养分,比如地衣;
guild : 对trophicMode 分类系统的补充,更加细分,
在Pathotroph 下,又细分成
Animal Pathogen : 动物病原菌
Plant Pathogen : 植物病原菌(这里应该是特指高等植物)
Fungal Parasite :真菌寄生菌
Lichen Parasite :地衣寄生菌
Bryophyte Parasite:苔藓植物寄生菌
Clavicipitaceous Endophyte : 内生真菌
在Saprotroph 下,又细分成
Dung Saprotroph :排泄物腐生菌(如粪便)
Leaf Saprotroph : 叶子腐生菌
Plant Saprotroph : 植物腐生菌 (生长环境多腐败的植物)
Soil Saprotroph :土壤腐生菌
Wood Saprotroph :木质腐生菌
在Symbiotroph 下,又细分:
Ectomycorrhizal :外生菌根
Ericoid Mycorrhizal : 杜鹃花类菌根
Endophyte, Epiphyte :
Lichenized : 地衣共生菌
Confidence Ranking: 可信度, "Highly Probable" (= absolutely certain), "Probable" (= fairly certain), "Possible" (= suspected but not proven, conflicting reports given, etc.)
growthFrom: 生长形态
trait: 形状:
notes : 注意事项
ciationSource : 相关文献
可以看到这里的 guild 字段就是对真菌功能的一个细致划分,基于我们测序得到的真菌序列,就可以进行Guild 的功能注释:
FUNGuild 数据库提供了在线的工具进行功能注释,输入文件为otu 注释的表格,链接如下:
http://www.stbates.org/guilds/app.php

otu 注释表格示例如下:

前面为otu丰度表,最后一列为otu 注释信息;
把这样一张otu 注释表格,上传上去,就可以分析了,但是我测试了几遍,发现都报错了,可能是后台的程序有问题吧
不过没关系,FUNGuild 还提供了python 脚本,从本地进行注释
链接如下:https://raw.githubusercontent.com/UMNFuN/FUNGuild/master/Guilds_v1.1.py
python Guilds_v1.1.py -h
usage: Guilds_v1.1.py [-h] [-otu OTU] [-m] [-u] [-db {fungi,nematode}] optional arguments:
-h, --help show this help message and exit
-otu OTU Path and file name of the OTU table. The script will
try to detect the delimiterin the file, but tab or csv
are preferred formats.
-m, --matched Ask the script to output a otu table with function
assigned OTUs
-u, --unmatched Ask the script to output a otu table with function
assigned OTUs
-db {fungi,nematode} Assign a specified database to the script
用法很简单,-otu 指定otu表格,-db 指定数据库,我们肯定是用fungi
测试命令如下:
python Guilds_v1.1.py -otu otu.table -db fungi
运行过程打印如下信息:
FunGuild v1.0 Beta
Connecting with FUNGuild database ... Reading in the OTU table: 'otu.table' Searching the FUNGuild database...
10%
20%
30%
40%
50%
60%
70%
80%
90%
100% Found 4 matching taxonomy records in the database.
Dereplicating and sorting the result...
FunGuild tried to assign function to 10 OTUs in 'otu.table'.
FUNGuild made assignments on 4 OTUs.
Result saved to 'otu.guilds.txt' Total calculating time: 17.45 seconds.
最终结果保存在 otu.guilds.txt 中,文件内容如下:
前几列就是otu,table文件中的内容,只不过对于每个otu,在后面追加了注释信息

官方提供的 Guilds_v1.1.py 脚本需要和在线数据库交换数据,运行时需要联网,还需要注意的是,otu.table 文件的格式,必须有一列表头为Taxonomy, 第一列OTU_ID 前面不能加#
FunGuild 数据库简介的更多相关文章
- MongoDB数据库简介及安装
一.MongoDB数据库简介 简介 MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自"humongous",是一种开源 ...
- Oracle数据库简介
Oracle数据库简介 一.介绍 Oracle数据库系统是美国Oracle(甲骨文)公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(Client/Server,C/S)或浏览 ...
- 数据库 简介 升级 SQLite 总结 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- MongoDB,无模式文档型数据库简介
MongoDB的名字源自一个形容词humongous(巨大无比的),在向上扩展和快速处理大数据量方面,它会损失一些精度,在旧金山举行的MondoDB大会上,Merriman说:“你不适宜用它来处理复杂 ...
- 全球第一开源ERP Odoo操作手册 数据库简介
1.3 数据库简介 每一个独立核算的企业都有一套相互关联的账簿体系, 把这一套完整的账簿体系建立在计算机系统中就称为一个数据库. 一般一个企业只用一个数据库. 如果企业有几个下属的独立核算的实体,也可 ...
- MySql数据库基础之数据库简介及安装
MySql数据库简介: 众所周知,MySql数据库是一款开源的关系型数据库,在Web应用方面,MySql是最好的.最流行的RDBMS(Relational Database Management Sy ...
- Scopus数据库简介
ScienceDirect数据库1. Elsevier简介荷兰Elsevier 是全球最大的科学文献出版发行商,已有180多年的历史.其产品涵盖科学.技术和医学等各个领域,包括1800多种学术期刊(大 ...
- 数据库----ORACLE和MYSQL数据库简介
一.什么是数据库? 数据库(Database---DB)按照组织.储存和管理数据的仓库.(理解以下三个概念) 数据(Data)用来描述事物的记录都可称数据,如文字音乐图像. 数据库系统(Dat ...
- 数据库之一、数据库简介及SQL概要
1.数据库简介: 数据库(Database,DB)是一个长期存储在计算机内的.有组织的.有共享的.统一管理的数据集合.简单来讲就是可以放大量数据的地方.管理数据库的计算机系统称为数据库管理系统(Dat ...
随机推荐
- 【Socket】linux高性能网络服务程序
1.mystery引入 1)高性能的网络服务程序分为单线程重复式网络服务.多进程网络服务 .多线程网络服务.线程池网络服务和IO多路复用网络服务等 2)单线程重复式是最基本的一种TCP服务模式,其实现 ...
- hive入门
hive 当前用到的就这些,以后用到的再补充. 参考自官方文档 大小写不敏感 创建/删除数据库 CREATE/DROP DATABASE|SCHEMA [IF NOT EXISTS] <data ...
- 【Python学习笔记】-冒泡排序、插入排序、二分法查找
原文出处:https://blog.csdn.net/yort2016/article/details/68065728 冒泡排序 主要是拿一个数与列表中所有的数进行比对,若比此数大(或者小),就交换 ...
- UnicodeDecodeError: 'ascii' codec can't decode byte 0xa3 in position 1: ordinal not in range(128)
使用codecs模块 codecs模块能在处理字节流的时候提供很大帮助.你可以用定义的编码来打开文件并且你从文件里读取的内容会被自动转化为Unicode对象. 试试这个: >>> i ...
- 初步理解Python进程的信号通讯
Reference: http://www.jb51.net/article/63787.htm 信号的概念 信号(signal)-- 进程之间通讯的方式,是一种软件中断.一个进程一旦接收到信 ...
- python 基础总结1
1.python简介特点: 是简单义学,有功能强大,高性能.面向对象,对动态输入的支持.解释性语言的本质,是大多数平台上理想的脚本语言. 简单,义学 免费, ...
- Linux下高并发socket最大连接数所受的各种限制(转)
1.修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个 ...
- swing自定义border
public class MyBorder extends AbstractBorder { private static final long serialVersionUID = 1L; priv ...
- 【进阶修炼】——改善C#程序质量(1)
这是一个大纲形式的概要,以便自己可以花较少的时间反复阅读.在开发中,多加注意这些有用的建议,让自己成为一个更优秀的程序员.内容主要来自<编写高质量代码-改善C#程序的157个建议>(陆敏技 ...
- 1.php代码块
一.登录 <form action="index.php?m=admin&c=index&a=login&dosubmit=1" method=&qu ...