test$sed 's/BetaCo[vV]\/.*|//' test6.fa >test7.fa
test$cat test7.fa
>EPI_ISL_402119
ATTAAAGGTTTATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAACGAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATAATTAATAACTAATTACTGTCGTTGACAGGACACGAGTAACTCGTCTATCTTCTGCAGGCTGCTTACGGTTTCGTCCGTGTTGCAGCCGATCATCAGCACATCTAGGTTTNNGTGATTTTAATAGCTTCTTAGGAGAATGACAAAAAAAAAAAAAAAAAAAAA
>EPI_ISL_402120
ATTAAAGGTTTATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAACGAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATAATTAATAACTAATTACTGTCGTTGACAGGACACGAGTAACTCGTCTATCTTCTGCAGGCTGCTTACGGTTTCGTCCGTGTTGCAGCCGATCATCAGCACATCTAGGTTTNNGTGATTTTAATAGCTTCTTAGGAGAATGACAAAAAAAAAAAAAAAAAAAAAAAAAA
>EPI_ISL_402121
ATTAAAGGTTTATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAACGAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATAATTAATAACTAATTACTGTCGTTGACAGGACACGAGTAACTCGTCTATCTTCTGCAGGCTGCTTACGGTTTCGTCCGTGTTGCAGCCGATCATCAGCACATCTAGGTTTNNGTGATTTTAATAGCTTCTTAGGAGAATGACAAAAAAAAAAAAAAAAAAAAA
>EPI_ISL_402123
ATTAAAGGTTTATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAACGAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATAATTAATAACTAATTACTGTCGTTGACAGG
参数意义:
‘s/BetaCo[vV]/.*|//’
- BetaCo[vV]:表示匹配BetaCov和BetaCoV
- / :表示匹配名称中的“/”,需要转义符号“\”将其于sed命令的“\”区分开
- .* :.任意字符,0次或者多次,此处也可改成+(1次或者多次,但要加-r参数,指定其使用扩展正则表达式)
最终结果序列名称更加精简,序列中不含特殊字符,并且变成一行,可以用于下游分析。
从网上下载的DNA序列在做生物信息或者机器学习之前,需要对序列进行质控,观察是否有一些特殊字符如“-”,“>"等。sed 是一个字符处理命令,可以使用正则表达式,可以对序列替换,删除,查找等处理,速度非常块,本次使用sed处理序列要处理的序列如下:test$less test.fa>BetaCov/Wuhan/IVDC-HB-01/2019|EPI_ISL_402119ATTA...
“ DupRemover”-重复卸妆
删除multifasta文件中的重复序列。
DupRemover查找重复的序列并保留唯一的序列,同时将所有fasta标头连接到一个核苷酸或氨基酸multifasta文件中。
生物蟒> = 1.78
安装biopython(如果尚未安装)
pip3安装biopython或python3.6 -m pip安装biopython
python3 DupRemover.py / path / to / input_file / path / to / output_file
python3 DupRemover.py Mixed_sequences.fasta Unique_sequences.fasta
重复删除已获得GNU通用公共许可证v3.0的许可。此强大的copyleft许可证的许可条件是,必须在同一许可证下提供许可作品和修
这是我导师给我的一个任务
从一个很大的fasta文件提取序列名称含有特定字样的序列,合成新的fasta文件
一开始一直想不到怎么去做,知道调用了split-fasta这个python库。
话不多说,上代码!
(这是基于windows下的啊
打开pycharm copy好文件到项目目录
系统终端输入:
pip install spilt-fasta
之后直接在命令行(系统终端命令行,不是python的)
splitfasta 你要分割的fasta文件名.fasta
之后他会创建一个目录test_split
sed 是一种流编辑器,它一次处理一行内容。
处理时,把当前处理的行存储在称为“模式空间”(pattern space)的临时缓冲区中,接着用 sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。
生成联系文件
leadingsci@DELL5577:~/Test$ cat df.txt
Filesystem Size Use...