You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.7 KiB
67 lines
1.7 KiB
import sys
|
|
import os
|
|
import glob
|
|
|
|
def usage():
|
|
print 'python <script_name>.py <directory_path_1> <directory_path_2>'
|
|
print 'directory_path_1 --> GCAT2 and directory_path_2 --> GCAT3'
|
|
print 'Eg: python ./script.py ./GCAT2 ./GCAT3'
|
|
|
|
|
|
def main():
|
|
first_dir_path = sys.argv[1]
|
|
second_dir_path = sys.argv[2]
|
|
|
|
files1=[]
|
|
files2=[]
|
|
parameter_list=[]
|
|
|
|
for root,dirs,files in os.walk(first_dir_path):
|
|
files1.extend(files)
|
|
print 'Files in GCAT2:'
|
|
print files1
|
|
print '\n'
|
|
|
|
for root,dirs,files in os.walk(second_dir_path):
|
|
files2.extend(files)
|
|
print 'Files in GCAT3:'
|
|
print files2
|
|
print '\n'
|
|
|
|
print 'Common Files:'
|
|
print [f for f in files2 if f in files1]
|
|
print '\n'
|
|
|
|
for f in files2:
|
|
if f in files1:
|
|
parameter_list.append(f[:-4])
|
|
# print parameter_list
|
|
|
|
|
|
# using glob
|
|
# parameter_list = ['Media_Background','OD_Transform', 'Inoculation', 'Points_Ignored', 'Growth_Threshold']
|
|
for parameter in parameter_list:
|
|
file_1 = glob.glob(first_dir_path+"/"+parameter + "*.txt")
|
|
file_2 = glob.glob(second_dir_path+"/"+parameter + "*.txt")
|
|
print file_1
|
|
print file_2
|
|
if len(file_1)==1 and len(file_2)==1:
|
|
# run it on command line
|
|
command = "Rscript compare_gcat_output.R "+ file_1[0] + " " + file_2[0] + " " + parameter
|
|
print command
|
|
os.system(command + '>' + './Comparison_Datasets/' + parameter + '.txt') # run it on command line
|
|
print 'done'
|
|
else:
|
|
print 'Multiple files found for the parameter' + parameter
|
|
|
|
|
|
if __name__ == '__main__':
|
|
# 2 arguments required other than script name:
|
|
# script name, dir_path_1, dir_path_2
|
|
# If insufficent command line arguments are passed, usage must be printed
|
|
if len(sys.argv) != 3:
|
|
usage()
|
|
# else continue with execution of script
|
|
else:
|
|
main()
|