用BEDtoolsPython序列截取

用BEDtoolsPython序列截取,第1张

BEDtools的官方主页地址为 https://bedtools.readthedocs.io/en/latest/content/bedtools-suite.html

在bedtools中众多功能中,getfasta可截取序列并获得fasta文件

以上命令只截取了chr1的,全部截取需要更改文件名字进行下一次截取。

bedtools getfasta 意思是使用bedtools下getfasta功能。

-fi 意思是输入的染色体序列信息的文件,后面跟着的是文件的位置信息。

-bed 意思是输入的bed文件,跟着的是文件位置信息。

-fo 意思是输出文件所在位置及对输出文件命名。

最终我们会得到24个fasta文件分别对应各个染色体的截取结果,最终我们用一个简单的python程序将这些文件合并,得到总的fasta文件,将这个文件上传到MEME-chip上就可以进行接下来的模体搜索啦。

考虑到有时宏桥宏候Linux系统的复杂性,或者有时候服务器不好使了,我们的备选就是人生苦短的Python啦,前提也是首先得有全基因组序列信息,和peak文件,对peak文件进行处蔽册理同上,命名为end.txt

然后用以下python程序进行序列截取

最终我们会得到截取出来的序列seq信息,但是并不是fasta格式的文件,首先我们将这24个序列文件进行合并,合并文件的python程序为

这个程序运行完之后会产生空行,接下来再用去除空行程序来将中间消者的空行去除

此处我们已经得到了截取出来的序列信息,接下来我们再用excle对之前的end.txt再进行一次处理输入公式 =A1&":"&B1&"-"&C1 来得到编号文件。

得到的fasta文件就可以进行模体搜索了。

注:文中所有python程序均来自网络或师姐的编辑

一般完整的文件为:滑神“文件名”颤让链.“文件格式”,可以通过“.”来获取文件名。\x0d\x0aimport os\x0d\x0afile_name=[]\x0d\x0astr_file=os.getcwd()#当前脚本路径\x0d\x0afor dirpaths, dirnames, filenames in os.walk(str_file):\x0d\x0afor filename in filenames:\x0d\x0aif "." in filename:\x0d\x0a\x0d\x0afilename=filename.split(".")[0]#以“茄孙.”为分割点获取文件名\x0d\x0a\x0d\x0afile_name.append(filename)\x0d\x0a\x0d\x0aprint file_name


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12249243.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存