#!/usr/bin/python
# Gets standardized scores for a table
# Greg Donahue, 08-16-2016

import sys, string, math

def main(args):
    if len(args) != 2: sys.exit("USAGE: python get_z.py TABLE > Z_TABLE")
    f = open(args[1]); lines = f.readlines(); f.close()
    print lines[0],
    for line in lines[1:]:
        t = line[:-1].split("\t")
        gene = t[0]
        avg = sum([ float(x) for x in t[1:] ])/(len(t)-1)
        stdev = math.sqrt(sum([ (float(x)-avg)**2 for x in t[1:] ])/(len(t)-2))
        print gene+"\t"+string.join([ str((float(x)-avg)/stdev) for x in t[1:] ], "\t")
    
if __name__ == "__main__": main(sys.argv)
