#!/usr/bin/python
# Splits an FPKM file into separate track files for heatmapping
# Greg Donahue, 08-28-2015

import sys

def main(args):
    if len(args) != 2: sys.exit("USAGE: python split_to_tracks.py TABLE")
    f = open(args[1]); lines = f.readlines(); f.close()
    if "\r" in lines[0]: delimiter = 2
    else: delimiter = 1
    header = lines[0][:-1*delimiter].split("\t")
    handles = dict()
    for H in header[1:]:
        handles[H] = open(H+".Track.txt", 'w')
        handles[H].write("\"T_"+H+"\" 0,X,0 0\n")
    for line in lines[1:]:
        t = line[:-1*delimiter].split("\t")
        for i in range(len(t)-1):
            handles[header[1+i]].write(t[0]+"\t"+t[1+i]+"\n")
    for H in handles.keys(): handles[H].close()

if __name__ == "__main__": main(sys.argv)
