利用Python解决生物问题:批量对应转录本-基因名
前言
大部分分析我们需要明确转录本和基因的一一对应关系
如果是如下这种规范格式的,那么这种对应关系是好找的
如果是这样的呢?没有肉眼可见的关系,
准备文件
- ensemble官网下载的pep序列文件
实现效果
- 每个物种的一一对应文本文件
- 所有物种一一对应合并文件
Python脚本
#转录本id-基因id转化
from pathlib import Pathp = Path('H:\\ensemble下载')def transcript2gene(infile,outfile):change_list = []with open(infile,'rt') as f1:for eachline in f1:if eachline[0] == '>':transcript_name = eachline.split(' ')[0].lstrip('>')gene_name = eachline.split(' ')[3].split('=')[1]change_list.append(transcript_name + '\t' + gene_name + '\n')with open(outfile,'wt') as f2:for i in change_list:f2.write(i)def search_fa():for infile in p.iterdir():if infile.suffix == '.fa':outfile = p / (infile.stem + "T2G.txt")transcript2gene(infile,outfile)
search_fa()#####合并多个txt转换文件
def merge():mergefile = open(p / 'transcript2geneall.txt',"wt")info = []for each in p.iterdir():if each.suffix == '.txt':with open(each,'rt') as eachfile:for n in eachfile:info.append(n)for m in info:mergefile.write(m)mergefile.close()merge()
利用Python解决生物问题:批量对应转录本-基因名相关推荐
- 利用Python解决生物问题-批量获取最长转录本
前言 我们知道通常一个基因会有多条转录本,有时候从ensemble或phytizome上下载的cds或pep文件并没有经过序列过滤 而过滤后的序列即仅包含最长转录本有利于我们进一步分析研究,省去后续分 ...
- 利用Python解决生物问题-获取反向互补序列
seq = input('请输入您要处理的序列(仅包含ATGC):') demand = 'ATGC' for each in seq:if each not in demand:print('您输入 ...
- python 根据word生成ppt_未明学院:利用Python将Wordamp;PPT批量转成PDF
Python中的许多库,像一个个具有不同功能的"工具",能帮助我们解决工作中的不同问题,提高工作效率! 本期将继续为大家放松python中的实用技能,本期的主题是:利用Python ...
- 利用python解决Origin中十六进制和十进制整数转换的问题
利用python解决Origin中十六进制和十进制整数转换的问题 Origin是由OriginLab公司开发的一个科学绘图.数据分析软件,功能非常强大,可以画出各种漂亮的图像,而且还能进行数理统计/数 ...
- 利用Python解决最短路径问题
利用Python解决最短路径问题 题意 运行限制 解题思路 代码 法一(基于最短路径长度递增): 法二(基于图论中的最短路径算法): 推荐练习 题意 一图由 2021 个结点组成,依次编号 1 至 2 ...
- 利用Python解决豆瓣验证码,实现模拟登陆!
前言: 更为重要的一件事情是它是纯Python编程语言开发的!!! 所以咱们利用Python去搞定它的验证码实现模拟登陆,是有一定意义的哟! 实战: Python 3.6.5 解释器 pycharm ...
- 程序员如何利用 Python 解决女朋友不看天气的坏习惯?
作者 | 赵昱 责编 | 郭芮 在一个阴雨绵绵的早上,一切都是那么安静祥和.忽然之间,被电话打破了宁静,一看是女朋友的电话,就知道这个小家伙肯定又做了什么傻事......果不其然,16℃的雨天她居然穿 ...
- 利用Python脚本给图片批量添加文字水印
引言:本人从小白自学python,为了测试基础学习效果,增加一定的促进,想通过参加全国计算机等级考试二级python来检验基础学习情况.在学习过程中,会将该过程编写的python小程序题目在此发表,希 ...
- python文件批量重命名以数字~n的方式重命名_利用Python对文件进行批量重命名
最近几天工作的内容是对40个项目进行考核,每个项目都需要一个考核评分表,已经有了项目的列表. 如果用常规的方法,需要复制40个文件,并逐个修改,不光工作量大,也容易出错,后期修改也不方便. 于是想到了 ...
最新文章
- IOS7 ~ Xcode5 制作 framework
- Java复习-线程之间的通信与同步
- Python 任意中文文本生成词云 最终版本
- url特殊字符转义及解决方法
- Kubernetes-连接Harbor仓库拉取镜像
- Python是什么?有那些用途?
- html xsl xml文件,用XSL显示XML文件看起来像HTML
- dart 怎么判断function的返回值为空_R 学习-第二章第二节- 尝试写个Function,超级菜鸟教程...
- signature=4c9125bac76ec40553ba356eaca47964,2008 SEM Honorary Members Conversations
- linux access源码,从零开始学习Linux:Day04 源码安装Nginx 。acess/status/referer
- Javascript你必须要知道的面试题
- 【深度首发】图森未来CEO陈默:我们并非在主机厂上游兜售技术,而是立足下游,做卡车运输业的智能服务商丨Xtecher 封面
- 制造行业相关名词释义
- LED灯恒流驱动电路设计
- 软件设计模式Java版
- 联想用u盘重装系统步骤_联想笔记本u盘重装系统,详细教您联想笔记本怎么使用u盘重装系统...
- 3GPP Release简介
- 《现代信息检索导论》课程梳理
- 阿里系App抓包详细分析
- 软件工程技术--第一章 概述
热门文章
- Ubuntu16.04搭建GitLab服务器教程
- 我与微软MOS的八年之缘
- 圆形电子围栏检测嵌入式C实现
- C/C++财务报销审批
- c语言常用条件判断,C语言菜鸟基础教程之条件判断
- 家庭宽带上行下行是什么意思带宽的上行下行速率对网速有什么影响?
- impala时间戳转时间的时区问题
- 考考你,这些嵌入式相关名词你知道几个?
- django时间查询
- TabLayout使用介绍(com.google.android.material.tabs.TabLayout)