##################################
#                                #
# Last modified 12/14/2010       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string

def run():

    if len(sys.argv) < 3:
        print 'usage: python %s inputfile fieldID outfilename ' % sys.argv[0]
        print 'inputfile is output of threshold-test-isoforms-per-gene.py' 
        sys.exit(1)

    input = sys.argv[1]
    fieldID = int(sys.argv[2])
    outputfilename = sys.argv[3]

    outfile = open(outputfilename, 'w')

    lineslist = open(input)
    TransitionDict={}
    Wait=True
    for line in lineslist:
        if line.startswith('#threshold'):
            Wait=False
            continue
        if Wait:
            continue
        fields = line.strip().split('\t')
        transition=fields[fieldID].split(',')
        t1=int(transition[0])
        t2=int(transition[1])
        if TransitionDict.has_key(t1):
            pass
        else:
            TransitionDict[t1]={}
        if TransitionDict[t1].has_key(t2):
            pass
        else:
            TransitionDict[t1][t2]=0
        TransitionDict[t1][t2]+=1

    outline='#'
    for i in range(0,16):
        outline=outline+'\t'+str(i)
    outfile.write(outline+'\n')
    for i in range(0,16):
        outline=str(i) 
        if TransitionDict.has_key(i):
            for j in range(0,16):
                if TransitionDict[i].has_key(j):
                    outline=outline+'\t'+str(TransitionDict[i][j])
                else:
                    outline=outline+'\t0'
        else:
            for j in range(0,16):
                outline=outline+'\t0'
        outfile.write(outline+'\n')

    outfile.close()

run()

