导入和查询CTD

PyCTD的Python项目详细描述


Development Documentation StatusApache 2.0 License

PyCTD是一个python包 访问和查询化学-基因/蛋白质相互作用、化学-疾病和基因-疾病 由Comparative Toxicogenomics Database提供的数据建立的关系。 数据安装在一个(本地或remte)rdbms中,使生物信息算法的响应速度非常快。 通过使用SqLalCyy数据库层来实现复杂的查询和高灵活性。 PYCTD是由 Department of Bioinformatics 在弗劳恩霍夫算法和科学计算研究所 SCAI 有关CTD的更多信息,请访问 this section in the documentation

Entity relationship model

以下IMI项目支持此开发:

IMI project logoAETIONOMY project logoPHAGO project logoSCAI project logo

支持的数据库

pyctd使用SQLAlchemy覆盖广泛的rdms (关系数据库管理系统)。为了获得最佳性能,建议使用mysql或mariadb。但如果你没有 在系统sqlite上安装软件的可能性-无需进一步 安装-同样有效。支持以下RDM(由sqlalchemy提供):

  1. 火鸟
  2. Microsoft SQL Server
  3. mysql/MariaDB
  4. 甲骨文
  5. PostgreSQL
  6. sqlite
  7. Sybase

开始

这是一个急躁的快速入门教程。

安装Current version on PyPIStable Supported Python Versions

pyctd可以与pip一起安装。

pip install pyctd

如果由于没有安装权限而失败,请使用超级用户(在推荐之前在Linux上使用sudo)或…

pip install --user pyctd

如果要确保在python3下安装,请使用…

python3 -m pip install pyctd

sqlite

注意

如果您想使用sqlite作为数据库系统,因为您…

  • 不可能使用像mysql/mariadb这样的rdms
  • 只需测试pyctd,但不想花时间设置数据库

跳过下一个mysql/mariadb setup部分。但一般来说,我们推荐mysql或mariadb作为rdbms。

如果您不知道这意味着什么,请跳过mysql/mariadb setup部分。

别担心!以后可以随时更改配置。有关的详细信息 稍后更改数据库系统转到副标题更改数据库配置Changing database configuration 在有关ReadtheDocs的文档中。

mysql/mariadb设置

以根用户身份登录mysql,创建新数据库,创建用户,分配权限和刷新权限。

CREATEDATABASEpyctdCHARACTERSETutf8COLLATEutf8_general_ci;GRANTALLPRIVILEGESONpyctd.*TO'pyctd_user'@'%'IDENTIFIEDBY'pyctd_passwd';FLUSHPRIVILEGES;

启动python shell并设置mysql配置。如果您没有更改SQL语句中的任何内容…

importpyctdpyctd.set_mysql_connection()

如果您使用了自己的设置,请根据需要调整以下命令。

importpyctdpyctd.set_mysql_connection(host='localhost',user='pyctd_user',passwd='pyctd_passwd',db='pyctd')

更新

更新过程将下载CTD团队在 download page

警告

请注意,下载文件需要1.5GB的磁盘空间,更新需要大约2小时(取决于您的系统)

importpyctdpyctd.update()

示例查询

>>>query=pyctd.query()>>>results=query.get_chem_gene_interaction_actions(gene_name='APP',interaction_action='meman%',limit=1)>>>first_result=r>>>r.chemicalMemantine>>>r.pubmed_ids[21290839]>>>r.chemical.drugbank_ids[DB014043]

更多信息

请参阅installation documentation了解更高级的 说明。另外,检查CHANGELOG.rst的更改日志。

CTD工具和许可证(数据使用)

ctd还提供许多在线的query interfacestools to analyse data在他们的网站上。

请注意CTD license,它只允许将数据用于 研究和教育目的。不应根据CTD中的信息做出医疗决策。

未经 MDI生物实验室和北卡罗来纳州立大学。

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

推荐PyPI第三方库


热门话题
java JBPM:无法部署进程存档:null   java将一个数组拆分为两个大小相等的数组   java Spring boot验证该字段是否为string类型   JAVA JPA保存到TSV而不是SQL   java PMD报告超过X个违规   java是否支持springdatagremlin中的自定义查询?   java在“for”循环后使用变量   JPQL中默认查询中的java错误列   如何在java中实现不同于线程的进程?   java如何检查字符串是否平衡?   xml使用xalan扩展在XSL中处理java集合   java我试图使用子类/超类重写另一个类的值   转换为JSON时出现java堆栈溢出问题   java考虑定义一个类型为“COM”的bean。实例演示。在您的配置中命令$DefaultIO   java在kubernetes中如何检索转发端口的值?   JavaEclipse,动态web项目,向类路径添加另一个eclipse项目   eclipse的java Spring上下文XML验证器?   Linux下利用MATLAB(Windows)生成Java包   Java:在存储到DDC之前验证属性   java校验字符串