Source code for pesummary.core.file.formats.dat

# Licensed under an MIT style license -- see LICENSE.md

import numpy as np
from pesummary import conf
from pesummary.utils.utils import check_filename

__author__ = ["Charlie Hoy <charlie.hoy@ligo.org>"]


[docs] def read_dat(path, delimiter=None): """Grab the parameters and samples in a .dat file Parameters ---------- path: str path to the result file you wish to read in """ from .numpy import genfromtxt return genfromtxt(path, delimiter=delimiter, names=True)
def _write_dat( parameters, samples, outdir="./", label=None, filename=None, overwrite=False, delimiter=conf.delimiter, default_filename="pesummary_{}.dat", **kwargs ): """Write a set of samples to a dat file Parameters ---------- parameters: list list of parameters samples: 2d list list of samples. Columns correspond to a given parameter outdir: str, optional directory to write the dat file label: str, optional The label of the analysis. This is used in the filename if a filename if not specified filename: str, optional The name of the file that you wish to write overwrite: Bool, optional If True, an existing file of the same name will be overwritten delimiter: str, optional The delimiter you wish to use for the dat file """ filename = check_filename( default_filename=default_filename, outdir=outdir, label=label, filename=filename, overwrite=overwrite ) np.savetxt( filename, samples, delimiter=delimiter, header=delimiter.join(parameters), comments='' ) def write_dat( parameters, samples, outdir="./", label=None, filename=None, overwrite=False, delimiter=conf.delimiter, **kwargs ): """Write a set of samples to a dat file Parameters ---------- parameters: nd list list of parameters samples: nd list list of samples. Columns correspond to a given parameter outdir: str, optional directory to write the dat file label: str, optional The label of the analysis. This is used in the filename if a filename if not specified filename: str, optional The name of the file that you wish to write overwrite: Bool, optional If True, an existing file of the same name will be overwritten delimiter: str, optional The delimiter you wish to use for the dat file """ from pesummary.io.write import _multi_analysis_write _multi_analysis_write( _write_dat, parameters, samples, outdir=outdir, label=label, filename=filename, overwrite=overwrite, delimiter=delimiter, file_format="dat", **kwargs )