File: one2zeroBased_vcf.py

package info (click to toggle)
discosnp 2.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 2,036 kB
  • sloc: cpp: 3,342; python: 1,833; sh: 1,420; makefile: 15
file content (24 lines) | stat: -rwxr-xr-x 836 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/python
# -*- coding: utf-8 -*-
###################################
#Transforms a 1-based vcf into 0-based vcf
# usage : one2zeroBased_vcf.py vcf_file
import sys
from functionsVCF_creator import *
file=open(sys.argv[1],"r")
VCFfile=open("VCFone2zeroBAsed.vcf","w")

for line in file:
    if "#" == line[0]: 
        print((line,))
        continue
    line=line.rstrip('\n')
    #SNP_higher_path_3       117     3       C       G       .       .       Ty=SNP;Rk=1.00000;UL=86;UR=261;CL=.;CR=.;C1=124,0;C2=0,134      GT:DP:PL        0/0:124:10,378,2484     1/1:134:2684,408,10
    splitted_line = line.split("\t")
    
    # decrease the position value if it is a number:
    if str.isdigit(splitted_line[1].strip()):
        splitted_line[1]=int(splitted_line[1])#-1

    # prints the line
    printOneline(splitted_line,VCFfile)