def add_to_measurement(d): '''d is dict returned from "get_measurement()"''' new={} for key in ['name','rms_beta','yax_val','med','med_low','med_hi']: new[key]= np.zeros(len(d['beta'])) # Set non float types if key == 'name': new[key]= new[key].astype(str) elif key == 'yax_val': new[key]= new[key].astype(int) if d.has_key('smean'): for key in ['mean','mean_low','mean_hi']: new[key]= np.zeros(len(d['beta'])) if d.has_key('pdf_low'): for key in ['pdf_low','pdf_hi']: new[key]= np.zeros(len(d['beta'])) mods= ['bInf', 'bInfsd3', 'b100','b10','b1','b1e-1', 'b1e-2'] assert(len(mods) == len(d['beta'])) for i,key in enumerate(mods[::-1]): new['name'][i]= key rms_va,rms_b= ic_rms_vals(key) new['rms_beta'][i]= rms_b new['yax_val'][i]= i+1 #median and +/- sigma using quartiles idx= list(d['beta']).index(key) new['med'][i]= d['smed'][idx] new['med_low'][i]= d['med_low'][idx] new['med_hi'][i]= d['med_hi'][idx] if d.has_key('smean'): #mean and +/- sigma using quartiles new['mean'][i]= d['smean'][idx] new['mean_low'][i]= d['mean_low'][idx] new['mean_hi'][i]= d['mean_hi'][idx] if d.has_key('pdf_low'): new['pdf_low'][i]= d['pdf_low'][idx] new['pdf_hi'][i]= d['pdf_hi'][idx] return new
def put_errbars_in_arrays_linear(final): """DON'T TAKE LOG10 of mdot IN THIS VERSION final is dict returned by final_measurement() vals are stored in dicts, want order them into arrays""" name, rms_beta, med_beta, yax_val, med, med_low, med_hi, std_low, std_hi = [], [], [], [], [], [], [], [], [] mods = ["bInf", "bInfsd3", "b100", "b10", "b1", "b1e-1", "b1e-2"] print "put_errbars_in_arrays_linear: mods= ", mods print "put_errbars_in_arrays_linear: final.keys()= ", final.keys() for cnt, key in enumerate(mods[::-1]): name.append(key) rms_va, rms_b = ic_rms_vals(key) rms_beta.append(rms_b) med_beta.append(ic_median_beta(key)) yax_val.append(cnt + 1) # median and +/- sigma using quartiles med.append(final[key]["final"]["med"]) med_low.append(final[key]["final"]["med_low"]) med_hi.append(final[key]["final"]["med_hi"]) # width mdot distributing from +/- quartiles std_low.append(final[key]["std_pdf"]["low"]) std_hi.append(final[key]["std_pdf"]["hi"]) return ( np.array(med), np.array(med_low), np.array(med_hi), np.array(std_low), np.array(std_hi), np.array(yax_val), np.array(rms_beta), np.array(med_beta), name, )
def put_errbars_in_arrays_linear(final): '''DON'T TAKE LOG10 of mdot IN THIS VERSION final is dict returned by final_measurement() vals are stored in dicts, want order them into arrays''' name,rms_beta,med_beta,yax_val,med,med_low,med_hi,std_low,std_hi= [],[],[],[],[],[],[],[],[] mods= ['bInf', 'bInfsd3', 'b100','b10','b1','b1e-1', 'b1e-2'] print 'put_errbars_in_arrays_linear: mods= ',mods print 'put_errbars_in_arrays_linear: final.keys()= ',final.keys() for cnt,key in enumerate(mods[::-1]): name.append( key) rms_va,rms_b= ic_rms_vals(key) rms_beta.append( rms_b ) med_beta.append( ic_median_beta(key) ) yax_val.append( cnt+1) #median and +/- sigma using quartiles med.append( final[key]['med'] ) med_low.append( final[key]['med_low'] ) med_hi.append( final[key]['med_hi'] ) #width mdot distributing from +/- quartiles std_low.append( final[key]['std_low'] ) std_hi.append( final[key]['std_hi'] ) return np.array(med),np.array(med_low),np.array(med_hi),np.array(std_low),np.array(std_hi), np.array(yax_val),np.array(rms_beta),np.array(med_beta),name