Esempio n. 1
0
def main2():
    multiplot_data = []
    for fname in args.inp_res:
        if args.inject == None:
            args.inject = -1
        if (fname[-3:]).lower() == "zip":
            fdata = pc_uni6(fname)
            fdata.load()
            fdata.xml_parse()
            fdata.clean_up()
        if (fname[-3:]).lower() == "res":
            fdata = pc_res3(fname, reduce = args.reduce, inj_sel=args.inject)
            fdata.load()
        if args.extract == 'csv':
            data_writer1(fname, fdata)
        if args.extract == 'xlsx' and xlsx == True:
            generate_xls(fdata, fname)
        if args.check:
            fdata.input_check(show=True)
        if args.info:
            fdata.showheader()
        if args.points:
            fdata.inject_det(show=True)
        if args.user:
            user = fdata.get_user()
            print("User: " + user)
        if args.plot:
            multiplot_data.append((fdata, fname)) # Append touple with data
    if args.plot and plotting:
        plotterX(multiplot_data)
Esempio n. 2
0
def main2():
    for fname in args.inp_res:
        if args.inject == None:
            args.inject = -1
        if (fname[-3:]).lower() == "zip":
            fdata = pc_uni6(fname)
            fdata.load()
            fdata.xml_parse()
            fdata.clean_up()
        if (fname[-3:]).lower() == "res":
            fdata = pc_res3(fname, reduce = args.reduce, inj_sel=args.inject)
            fdata.load()
        if args.extract == 'csv':
            data_writer1(fname, fdata)
        if args.extract == 'xlsx' and xlsx == True:
            generate_xls(fdata, fname)
        if args.check:
            fdata.input_check(show=True)
        if args.info:
            fdata.showheader()
        if args.points:
            fdata.inject_det(show=True)
        if args.user:
            user = fdata.get_user()
            print("User: " + user)
        if args.plot and plotting:
            plotterX(fdata, fname)
Esempio n. 3
0
def main2():

    # determine if application is a script file or frozen exe
    if getattr(sys, 'frozen', False):
        application_path = os.path.dirname(sys.executable)
    elif __file__:
        application_path = os.path.dirname(os.path.realpath(__file__))

    for f in os.listdir(application_path):
        if f.lower().endswith('.res'):
            fname = os.path.join(application_path, f)
            # for fname in args.inp_res:
            if args.inject == None:
                args.inject = -1
            if (fname[-3:]).lower() == "zip":
                fdata = pc_uni6(fname)
                fdata.load()
                fdata.xml_parse()
                fdata.clean_up()
            if (fname[-3:]).lower() == "res":
                fdata = pc_res3(fname, reduce=args.reduce, inj_sel=args.inject)
                fdata.load()
            if args.extract == 'csv':
                data_writer1(fname, fdata)
            if args.extract == 'xlsx' and xlsx == True:
                generate_xls(fdata, fname)
            if args.check:
                fdata.input_check(show=True)
            if args.info:
                fdata.showheader()
            if args.points:
                fdata.inject_det(show=True)
            if args.user:
                user = fdata.get_user()
                print("User: " + user)
            if plotting:
                plotterX(fdata, fname)
Esempio n. 4
0
def processFile(in_fname, out_fname, options, data_outs, info_outs):
	resfile = pc_res3(in_fname)

	# Parse the file
	resfile.load()

	'''
	# List columns
	print resfile.keys()
	for k in resfile.keys():
		print len(resfile[k]['data'])
	'''

	target_columns = ['UV'] #,'Cond','Pressure','Flow','Temp']
	target_column = 'UV'
	#print resfile[target_column].keys()
	#sys.exit()

	# Write out parameters
	data_outs.write("# Run started {}\n".format(util.timestamp()))
	data_outs.write("# Command: {}\n".format(' '.join(sys.argv)))
	data_outs.write("# Parameters:\n")
	optdict = vars(options)
	for (k,v) in optdict.items():
		data_outs.write("#\t{k}: {v}\n".format(k=k, v=v))
	data_outs.write("# Input filename: {}\n".format(in_fname))
	data_outs.write("# Output filename: {}\n".format(out_fname))

	# Write output
	dout = util.DelimitedOutput()
	dout.addHeader('ml','Elution volume (mL)','f')
	dout.addHeader(target_column,'{name} ({unit})'.format(name=resfile[target_column]['data_name'], unit=resfile[target_column]['unit']),'f')
	dout.describeHeader(data_outs)

	dout.writeHeader(data_outs)
	format = dout.getFormat(named=True)
	data_length = len(resfile[target_column]['data'])
	n_written = 0
	last_entry_volume = resfile[target_column]['data'][0][0]
	last_entry = False
	cur_entry_volume = None
	# Tuples of (mL,UV)
	elution_window = []
	for i in range(data_length):
		entry = resfile[target_column]['data'][i]
		cur_entry_volume = entry[0]
		cur_entry_value = entry[1]
		#print last_entry_volume, cur_entry_volume
		if cur_entry_volume-last_entry_volume>=options.resolution_ml or i==data_length-1:
			# Compute averages
			datdict = {
				'ml':stats.mean([x[0] for x in elution_window]),
				target_column:stats.mean([x[1] for x in elution_window])
			}
			# Write out
			line = format.format(**datdict)
			data_outs.write(line)
			n_written += 1
			# Reset
			last_entry_volume = cur_entry_volume
			elution_window = []
		elution_window.append((cur_entry_volume, cur_entry_value))

	# Write out stopping time
	data_outs.write("# Run finished {}\n".format(util.timestamp()))

	# Shut down output
	if not out_fname is None:
		info_outs.write("# Wrote {} lines to {}\n".format(n_written, out_fname))
Esempio n. 5
0
def processFile(in_fname, out_fname, options, data_outs, info_outs):
    resfile = pc_res3(in_fname)

    # Parse the file
    resfile.load()
    '''
	# List columns
	print resfile.keys()
	for k in resfile.keys():
		print len(resfile[k]['data'])
	'''

    target_columns = ['UV']  #,'Cond','Pressure','Flow','Temp']
    target_column = 'UV'
    #print resfile[target_column].keys()
    #sys.exit()

    # Write out parameters
    data_outs.write("# Run started {}\n".format(util.timestamp()))
    data_outs.write("# Command: {}\n".format(' '.join(sys.argv)))
    data_outs.write("# Parameters:\n")
    optdict = vars(options)
    for (k, v) in optdict.items():
        data_outs.write("#\t{k}: {v}\n".format(k=k, v=v))
    data_outs.write("# Input filename: {}\n".format(in_fname))
    data_outs.write("# Output filename: {}\n".format(out_fname))

    # Write output
    dout = util.DelimitedOutput()
    dout.addHeader('ml', 'Elution volume (mL)', 'f')
    dout.addHeader(
        target_column,
        '{name} ({unit})'.format(name=resfile[target_column]['data_name'],
                                 unit=resfile[target_column]['unit']), 'f')
    dout.describeHeader(data_outs)

    dout.writeHeader(data_outs)
    format = dout.getFormat(named=True)
    data_length = len(resfile[target_column]['data'])
    n_written = 0
    last_entry_volume = resfile[target_column]['data'][0][0]
    last_entry = False
    cur_entry_volume = None
    # Tuples of (mL,UV)
    elution_window = []
    for i in range(data_length):
        entry = resfile[target_column]['data'][i]
        cur_entry_volume = entry[0]
        cur_entry_value = entry[1]
        #print last_entry_volume, cur_entry_volume
        if cur_entry_volume - last_entry_volume >= options.resolution_ml or i == data_length - 1:
            # Compute averages
            datdict = {
                'ml': stats.mean([x[0] for x in elution_window]),
                target_column: stats.mean([x[1] for x in elution_window])
            }
            # Write out
            line = format.format(**datdict)
            data_outs.write(line)
            n_written += 1
            # Reset
            last_entry_volume = cur_entry_volume
            elution_window = []
        elution_window.append((cur_entry_volume, cur_entry_value))

    # Write out stopping time
    data_outs.write("# Run finished {}\n".format(util.timestamp()))

    # Shut down output
    if not out_fname is None:
        info_outs.write("# Wrote {} lines to {}\n".format(
            n_written, out_fname))