示例#1
0
        'on_count':
        on_count,
        'off_count':
        off_count,
        'alpha':
        alpha,
        'excess_count':
        excess_count,
        'li_ma':
        li_ma(on_count, off_count, alpha),
        'phm_on':
        photometrics_results['on'],
        'phm_off':
        photometrics_results['off'],
        'phm_excess':
        photometrics_results['excess'],
        'phm_li_ma':
        li_ma(photometrics_results['on'], photometrics_results['off'],
              photometrics_results['alpha']),
    })

try:
    csvex.save(os.path.join(args.dir, 'results_{}.tsv'.format(str(args.seed))),
               results,
               headers=list(results[0].keys()),
               delimiter="\t")
except:
    print(results)

exit(0)
示例#2
0
 def write_energies_spectra_tsv(cls, output_filename, energies, spectra):
     if not len(energies) == len(spectra):
         raise Exception('Need the same number of elements between energies and spectra')
     data = [ [energy, spectra[i]] for i, energy in enumerate(energies) ]
     csvex.save(output_filename, data, delimiter=" ")
示例#3
0
            output[filename] = []
        z = {
            'name': name,
            'ra': ra,
            'dec': dec,
            'seed': seed,
            'tmax': d['tmax'],
            'ts': ts_arr[i],
            'on_count': N_on_arr[i],
            'off_count': N_off_arr[i],
            'alpha': alpha_arr[i],
            'li_ma': li_ma_arr[i],
            ####
            'flux': flux_arr[i],
            'eflux': eflux_arr[i],
        }
        output[filename].append(z)

    # debug
    # for k,v in d.items():
    #     if k == "name" or k == "event_file":
    #         print(" ", k, ":", v)
    #     else:
    #         print(" ", k)
    # break

print(len(output))

for fn, data in output.items():
    csvex.save(fn, data, headers=list(data[0].keys()), delimiter="\t")
示例#4
0
            logging.debug("saving {}".format(img_filename))
        else:
            plt.show()
            plt.close()
    return None


if __name__ == '__main__':
    parser = argparse.ArgumentParser(description="Analyze data from tsv")
    parser.add_argument('files', help='the tsv file', nargs='+')
    args = parser.parse_args()

    original_data = []
    file_count = 0
    for fn in args.files:
        file_data = csvex.load(fn, header=True, sep='\t')
        file_count += 1
        for fd in file_data:
            original_data.append(fd)

    print("File read: {}".format(file_count), file=sys.stderr)
    print("     data: {}".format(len(original_data)), file=sys.stderr)

    ds = data_summary(original_data)
    if not data_summary_is_ok(
            ds, pointings=5, time_slots=8, different_seeds=5000):
        exit(1)

    # inplace augment
    data_augmentation(ds, bins_number=50)
    print_data_summary(ds.values())
示例#5
0
                        help="the final observations time in seconds",
                        type=int)
    parser.add_argument("-d",
                        "--dir",
                        help="the savings directory (default: data/)",
                        default="data")
    parser.add_argument("--save", help="save the time slices metadata in file")
    parser.add_argument("--force",
                        help="force the overwriting",
                        default=False,
                        action="store_true")
    parser.add_argument("-v", "--verbose", action="count", default=0)
    args = parser.parse_args()

    # export the model for each time slice
    exporter = TimeSliceExporter(args.input_fits,
                                 template_model=args.template_model,
                                 savings_dir=args.dir,
                                 verbosity=args.verbose,
                                 tmax=args.tmax)
    time_slices = exporter.export(force=args.force, ebl=args.ebl)
    if args.save:
        csvex.save(args.save,
                   time_slices,
                   headers=['id', 'tsec', 'model_file', 'ene_flux_file'],
                   delimiter="\t")
        logging.warning("Timeslices saved in {}".format(args.save))
    elif args.verbose:
        print(time_slices)
    exit(0)