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:
objectThis 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
- 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_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.