Example #1
0
    paths["iso"]["Nominal"] = base_path + "/iso/Nominal/"
    paths["antiiso"]["Nominal"] = base_path + "/antiiso/Nominal/"
    #Then open files
    print "opening data and MC files"
    openedFiles = open_all_data_files(dataGroup, MCGroups, QCDGroup, paths)

    cutconfs = select_cuts()
    canvases = []
    for cuts in cutconfs:
        #cuts.setTrigger("1")
        cuts.calcCuts()
        print cuts
        ((y, error),
         fit) = get_qcd_yield_with_fit(var, cuts, cutMT, mtMinValue, dataGroup,
                                       lumis, MCGroups, systematics,
                                       openedFiles, cuts.isMC, QCDGroup)
        #print cuts
        print "Selection: %s" % cuts.name
        print "QCD yield in selected region: ", y, "+-", error
        print "Total: QCD: %.2f +- %.2f" % (fit.qcd, fit.qcd_uncert)
        print "W+Jets: %.2f +- %.2f, ratio to template: %.2f" % (
            fit.wjets, fit.wjets_uncert, fit.wjets / fit.wjets_orig)
        print "Other MC: %.2f +- %.2f, ratio to template: %.2f" % (
            fit.nonqcd, fit.nonqcd_uncert, fit.nonqcd / fit.nonqcd_orig)

        print fit
        #clear_histos(data_group, mc_groups)
        dataHisto = dataGroup.getHistogram(var, "Nominal", "iso", cuts.name)
        canvases.append(plot_fit(var, cuts, dataHisto, fit))
        clear_histos(dataGroup, MCgroups)
Example #2
0
    base_path = "/home/andres/single_top/stpol/out_step3_06_01"
    
    paths = generate_paths(systematics, base_path)
    #For example:
    paths["iso"]["Nominal"] = base_path+"/iso/Nominal/"
    paths["antiiso"]["Nominal"] = base_path+"/antiiso/Nominal/"
    #Then open files    
    print "opening data and MC files"
    openedFiles = open_all_data_files(dataGroup, MCGroups, QCDGroup, paths)
    
    cutconfs = select_cuts()
    canvases = []   
    for cuts in cutconfs: 
        #cuts.setTrigger("1")
        cuts.calcCuts()
        print cuts
        ((y, error), fit) = get_qcd_yield_with_fit(var, cuts, cutMT, mtMinValue, dataGroup, lumis, MCGroups, systematics, openedFiles, cuts.isMC, QCDGroup)
        #print cuts
        print "Selection: %s" % cuts.name
        print "QCD yield in selected region: ", y, "+-", error
        print "Total: QCD: %.2f +- %.2f" % (fit.qcd, fit.qcd_uncert)
        print "W+Jets: %.2f +- %.2f, ratio to template: %.2f" % (fit.wjets, fit.wjets_uncert, fit.wjets/fit.wjets_orig)
        print "Other MC: %.2f +- %.2f, ratio to template: %.2f" % (fit.nonqcd, fit.nonqcd_uncert, fit.nonqcd/fit.nonqcd_orig)

        print fit
        #clear_histos(data_group, mc_groups)
        dataHisto = dataGroup.getHistogram(var,  "Nominal", "iso", cuts.name)
        canvases.append(plot_fit(var, cuts, dataHisto, fit))
        clear_histos(dataGroup, MCgroups)
#Code written by Farbod Kamiab
#The code plots distance versus travel time for 10000 points in the data 

import numpy as np
import pandas as pd
import matplotlib.pyplot as pl
import statsmodels.api as sm
import plot_fit as pfit
import pygmaps

number_rows=10000
df=pd.read_csv('~/Downloads/data/trip_data_1_2010.csv', nrows=number_rows)


df_time_distance= df[[' trip_time_in_secs', ' trip_distance']]
time_sorted_df_time_distance= df_time_distance.sort_values(' trip_time_in_secs')
nbegin=int(number_rows/5.3)
time=time_sorted_df_time_distance[' trip_time_in_secs'][nbegin:]
distance= time_sorted_df_time_distance[' trip_distance'][nbegin:]
result = sm.OLS( distance, time ).fit()
fig, ax = pl.subplots()
fig = pfit.plot_fit(result, 0, ax=ax)
ax.set_ylabel("Distance (miles)")
ax.set_xlabel("Time (min)")
pl.savefig('Correlation.png', bbox_inches='tight')



Example #4
0
X_poly_val, dummy_mu, dummy_sigma = feature_normalize(X_poly_val, mu, sigma)
X_poly_val = np.hstack((np.ones((m_val, 1)), X_poly_val))

print 'Normalized Training Example 1:'
print X_poly[0, :]


#  =========== Part 7: Learning Curve for Polynomial Regression =============
print '\nPart 7: Learning Curve for Polynomial Regression'

l = 0.0
theta = train_linear_reg(X_poly, y, l, iteration=500)

plt.figure()
plt.plot(X, y, linestyle='', marker='x', color='r')
plot_fit(np.min(X), np.max(X), mu, sigma, theta, p)
plt.xlabel('Change in water level (x)')
plt.ylabel('Water flowing out of the dam (y)')
plt.title('Polynomial Regression Fit (lambda = {})'.format(l))
plt.show()

error_train, error_val = learning_curve(X_poly, y, X_poly_val, y_val, l)
plt.figure()
plt.plot(range(1, m + 1), error_train, color='b', marker='v', label='Train')
plt.plot(range(1, m + 1), error_val, color='r', label='Cross Validation')
plt.legend(loc='upper right')
plt.title('Polynomial Regression Learning Curve (lambda = {})'.format(l))
plt.xlabel('Number of training examples')
plt.ylabel('Error')
plt.show()
Example #5
0
    cuts_final_without_eta = FitConfig("final_selection_without_eta_cut")
    cuts_final_without_eta.setFinalCuts("top_mass < 220 && top_mass > 130")

    # cuts = cuts_final
    cuts = cuts_final_without_eta
    # cuts = cuts_2j0t
    ((y, error), fit) = get_qcd_yield_with_selection(cuts, lepton)
    # print cuts
    print "Selection: %s" % cuts.name
    print "QCD yield in selected region: %.2f +- %.2f, ratio to template from ONLY data %.3f" % (
        y,
        error,
        y / fit.orig["qcd_no_mc_sub"],
    )
    print "Total: QCD: %.2f +- %.2f, ratio to template from data %.3f" % (
        fit.qcd,
        fit.qcd_uncert,
        fit.qcd / fit.orig["qcd"],
    )
    print "W+Jets: %.2f +- %.2f, ratio to template: %.2f" % (fit.wjets, fit.wjets_uncert, fit.wjets / fit.wjets_orig)
    print "Other MC: %.2f +- %.2f, ratio to template: %.2f" % (
        fit.nonqcd,
        fit.nonqcd_uncert,
        fit.nonqcd / fit.nonqcd_orig,
    )

    print "Fit info:"
    print fit
    # make plot
    plot_fit(fit.var, cuts, fit.dataHisto, fit)
Example #6
0
#Run as /scratch/mario/theta/utils2/theta-auto.py get_qcd_yield.py - only works in phys!
if __name__ == "__main__":
    lepton = "mu"
    #lepton = "ele"

    cuts_final = FitConfig("final_selection")
    cuts_2j0t = FitConfig("2j0t_selection")
    cuts_2j0t.setBaseCuts("n_jets == 2 && n_tags == 0")
    cuts_final_without_eta = FitConfig("final_selection_without_eta_cut")
    cuts_final_without_eta.setFinalCuts("top_mass < 220 && top_mass > 130")

    #cuts = cuts_final
    cuts = cuts_final_without_eta
    #cuts = cuts_2j0t
    ((y, error), fit) = get_qcd_yield_with_selection(cuts, lepton)
    #print cuts
    print "Selection: %s" % cuts.name
    print "QCD yield in selected region: %.2f +- %.2f, ratio to template from ONLY data %.3f" % (
        y, error, y / fit.orig["qcd_no_mc_sub"])
    print "Total: QCD: %.2f +- %.2f, ratio to template from data %.3f" % (
        fit.qcd, fit.qcd_uncert, fit.qcd / fit.orig["qcd"])
    print "W+Jets: %.2f +- %.2f, ratio to template: %.2f" % (
        fit.wjets, fit.wjets_uncert, fit.wjets / fit.wjets_orig)
    print "Other MC: %.2f +- %.2f, ratio to template: %.2f" % (
        fit.nonqcd, fit.nonqcd_uncert, fit.nonqcd / fit.nonqcd_orig)

    print "Fit info:"
    print fit
    #make plot
    plot_fit(fit.var, cuts, fit.dataHisto, fit)
    time   = data.datasets[i][0]
    signal = data.datasets[i][1]
    fit_datasets.append([time[n_min:n_max], signal[n_min:n_max]])
    plot_datasets.append([time, signal])

#--------------------------------------------------------------------------------------------------
# Fit the data to model 
#--------------------------------------------------------------------------------------------------
fit_result = do_fit(fit_datasets, parms, averaging_type, fit_function, data.mass_molecules, glbl, data)
print(lmfit.fit_report(fit_result))

result_filename = \
    write_output.write_fit_out(glbl, data, path_to_fits, cmd_file, 
                               new_fit_number, fit_result, plot_datasets)

#==============================================================================
# uncomment when done with testing
#==============================================================================
if not debug2:
    write_output.write_results_excel_file(glbl, data, path_to_fits, new_fit_number, fit_result)

plot_fit(path_to_fits + result_filename)


    # if not calibration run
#==============================================================================
#     if not glbl.functions[i].lower().startswith('cal'):
#         WriteProbOutput(time, Signal, State, Label, NDataSet, fitResult.params,
#                         averaging_type, angles_list, fit_function)
#==============================================================================