sasdata.temp_ascii_reader module

class sasdata.temp_ascii_reader.AsciiReaderParams(filenames: list[str], columns: list[tuple[str, ~sasdata.quantities.units.NamedUnit | None]], metadata: ~sasdata.ascii_reader_metadata.AsciiReaderMetadata = <factory>, starting_line: int = 0, excluded_lines: set[int] = <factory>, separator_dict: dict[str, bool] = <factory>, dataset_type: ~sasdata.dataset_types.DatasetType = <factory>)

Bases: object

This object contains the parameters that are used to load a series of ASCII files. These parameters can be generated by the ASCII Reader Dialog when using SasView.

__annotations__ = {'columns': list[tuple[str, sasdata.quantities.units.NamedUnit | None]], 'dataset_type': <class 'sasdata.dataset_types.DatasetType'>, 'excluded_lines': set[int], 'filenames': list[str], 'metadata': <class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>, 'separator_dict': dict[str, bool], 'starting_line': <class 'int'>}
__dataclass_fields__ = {'columns': Field(name='columns',type=list[tuple[str, sasdata.quantities.units.NamedUnit | None]],default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'dataset_type': Field(name='dataset_type',type=<class 'sasdata.dataset_types.DatasetType'>,default=<dataclasses._MISSING_TYPE object>,default_factory=<function AsciiReaderParams.<lambda>>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'excluded_lines': Field(name='excluded_lines',type=set[int],default=<dataclasses._MISSING_TYPE object>,default_factory=<class 'set'>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'filenames': Field(name='filenames',type=list[str],default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'metadata': Field(name='metadata',type=<class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>,default=<dataclasses._MISSING_TYPE object>,default_factory=<class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'separator_dict': Field(name='separator_dict',type=dict[str, bool],default=<dataclasses._MISSING_TYPE object>,default_factory=<function initialise_separator_dict>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'starting_line': Field(name='starting_line',type=<class 'int'>,default=0,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}
__dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False)
__dict__ = mappingproxy({'__module__': 'sasdata.temp_ascii_reader', '__firstlineno__': 39, '__annotations__': {'filenames': list[str], 'columns': list[tuple[str, sasdata.quantities.units.NamedUnit | None]], 'metadata': <class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>, 'starting_line': <class 'int'>, 'excluded_lines': set[int], 'separator_dict': dict[str, bool], 'dataset_type': <class 'sasdata.dataset_types.DatasetType'>}, '__doc__': 'This object contains the parameters that are used to load a series of\nASCII files. These parameters can be generated by the ASCII Reader Dialog\nwhen using SasView.', 'starting_line': 0, '__post_init__': <function AsciiReaderParams.__post_init__>, 'initialise_metadata': <function AsciiReaderParams.initialise_metadata>, 'columns_included': <property object>, '__static_attributes__': (), '__dict__': <attribute '__dict__' of 'AsciiReaderParams' objects>, '__weakref__': <attribute '__weakref__' of 'AsciiReaderParams' objects>, '__dataclass_params__': _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False,match_args=True,kw_only=False,slots=False,weakref_slot=False), '__dataclass_fields__': {'filenames': Field(name='filenames',type=list[str],default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'columns': Field(name='columns',type=list[tuple[str, sasdata.quantities.units.NamedUnit | None]],default=<dataclasses._MISSING_TYPE object>,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'metadata': Field(name='metadata',type=<class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>,default=<dataclasses._MISSING_TYPE object>,default_factory=<class 'sasdata.ascii_reader_metadata.AsciiReaderMetadata'>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'starting_line': Field(name='starting_line',type=<class 'int'>,default=0,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'excluded_lines': Field(name='excluded_lines',type=set[int],default=<dataclasses._MISSING_TYPE object>,default_factory=<class 'set'>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'separator_dict': Field(name='separator_dict',type=dict[str, bool],default=<dataclasses._MISSING_TYPE object>,default_factory=<function initialise_separator_dict>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'dataset_type': Field(name='dataset_type',type=<class 'sasdata.dataset_types.DatasetType'>,default=<dataclasses._MISSING_TYPE object>,default_factory=<function AsciiReaderParams.<lambda>>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}, '__replace__': <function _replace>, '__hash__': None, '__init__': <function AsciiReaderParams.__init__>, '__repr__': <function AsciiReaderParams.__repr__>, '__eq__': <function AsciiReaderParams.__eq__>, '__match_args__': ('filenames', 'columns', 'metadata', 'starting_line', 'excluded_lines', 'separator_dict', 'dataset_type')})
__doc__ = 'This object contains the parameters that are used to load a series of\nASCII files. These parameters can be generated by the ASCII Reader Dialog\nwhen using SasView.'
__eq__(other)

Return self==value.

__firstlineno__ = 39
__hash__ = None
__init__(filenames: list[str], columns: list[tuple[str, ~sasdata.quantities.units.NamedUnit | None]], metadata: ~sasdata.ascii_reader_metadata.AsciiReaderMetadata = <factory>, starting_line: int = 0, excluded_lines: set[int] = <factory>, separator_dict: dict[str, bool] = <factory>, dataset_type: ~sasdata.dataset_types.DatasetType = <factory>) None
__match_args__ = ('filenames', 'columns', 'metadata', 'starting_line', 'excluded_lines', 'separator_dict', 'dataset_type')
__module__ = 'sasdata.temp_ascii_reader'
__post_init__()
__replace__(**changes)
__repr__()

Return repr(self).

__static_attributes__ = ()
__weakref__

list of weak references to the object

columns: list[tuple[str, NamedUnit | None]]
property columns_included: list[tuple[str, NamedUnit]]
dataset_type: DatasetType
excluded_lines: set[int]
filenames: list[str]
initialise_metadata()
metadata: AsciiReaderMetadata
separator_dict: dict[str, bool]
starting_line: int = 0
class sasdata.temp_ascii_reader.AsciiSeparator(*values)

Bases: Enum

Comma = (0,)
Tab = 2
Whitespace = (1,)
__doc__ = None
__module__ = 'sasdata.temp_ascii_reader'
sasdata.temp_ascii_reader.guess_params_from_filename(filename: str, dataset_type: DatasetType) AsciiReaderParams
sasdata.temp_ascii_reader.import_metadata(metadata: dict[str, AsciiMetadataCategory[str]]) MetaNode
sasdata.temp_ascii_reader.initialise_separator_dict(initial_value: bool = False) dict[str, bool]
sasdata.temp_ascii_reader.load_data(params: AsciiReaderParams) list[SasData]

This loads a series of SasData objects based on the params. The amount of SasData objects loaded will depend on how many filenames are present in the list contained in the params.

sasdata.temp_ascii_reader.load_data_default_params(filename: str) list[SasData]
sasdata.temp_ascii_reader.load_quantities(params: AsciiReaderParams, filename: str) dict[str, Quantity]

Load a list of quantities from the filename based on the params.

sasdata.temp_ascii_reader.merge_uncertainties(quantities: dict[str, Quantity]) dict[str, Quantity]

Data in the ASCII files will have the uncertainties in a separate column. This function will merge columns of data with the columns containing their uncertainties so that both are in one Quantity object.

sasdata.temp_ascii_reader.split_line(separator_dict: dict[str, bool], line: str) list[str]

Split a line in a CSV file based on which seperators the user has selected on the widget.