Overview
机器学习算法在项目中应用的时候,有时候会用到分离fasta
格式的正负样本。于是就写了一个python
脚本,效果不错,记录一下。
1. separatePosNeg.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #! /usr/bin/env python # -*- coding: utf-8 -*- # vim:fenc=utf-8 import fileinput import sys import re ls = fileinput. input (sys.argv[ 1 ]) check_head = re. compile (r '\>' ) cls = '' smplist = '' for line, strin in enumerate (ls): if check_head.match(strin): strin_vec = strin.split( '|' ) cls = strin_vec[ len (strin_vec) - 1 ].strip() if cls = = str (sys.argv[ 2 ]): smplist + = strin.strip() smplist + = '\n' smplist + = ls. next () print smplist |
记录下在linux
命令行中的用法:
1 2 3 4 | #提取正样本时: python separatePosNeg.py original.fasta '1' >> pos.fasta #提取负样本时: python separatePosNeg.py original.fasta '-1' >> neg.fasta |