##################################
#                                #
# Last modified 2017/05/09       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string
import math

def run():

    if len(sys.argv) < 3:
        print 'usage: python %s input label output' % sys.argv[0]
        sys.exit(1)

    input = sys.argv[1]
    label = sys.argv[2]
    outfilename = sys.argv[3]

    inputdatafile = open(input)
    CountList = []
    for line in inputdatafile:
        fields = line.strip().split('\t')
        C1 = float(fields[0])
        C2 = float(fields[1])
        C3 = float(fields[2])
        C4 = float(fields[3])
        CountList.append((C1,C2,C3,C4))

    outfile = open(outfilename, 'w')

    outline = 'MOTIF ' + label
    outfile.write(outline + '\n')
    outline = 'letter-probability matrix: alength= 4 w= ' + str(len(CountList)) + ' nsites= ' + str(C1 + C2 + C3 + C4)
    outfile.write(outline + '\n')

    for (C1,C2,C3,C4) in CountList:
        C1f = C1/(C1 + C2 + C3 + C4)
        C2f = C2/(C1 + C2 + C3 + C4)
        C3f = C3/(C1 + C2 + C3 + C4)
        C4f = C4/(C1 + C2 + C3 + C4)
        outline = str(C1f) + '\t' + str(C2f) + '\t' + str(C3f) + '\t' + str(C4f)
        outfile.write(outline + '\n')

    outfile.close()
   
run()
