Data Loader
data_loader
Módulo de carga de datos XPS
Este módulo maneja la importación de datos desde diferentes instrumentos XPS y formatos de archivo.
Classes
XPSDataset
Bases: XPSBaseModel
Representa un archivo XPS completo.
Methods:
validate_filename
classmethod
Validar que el nombre de archivo no esté vacío.
validate_spectra
classmethod
Validar que el diccionario de espectros no esté vacío.
Source code in src/xps_analyzer/data_loader/core.py
get_spectrum
XPSSample
Bases: XPSBaseModel
Representa una muestra XPS que puede contener múltiples archivos.
Methods:
validate_sample_name
classmethod
Validar que el nombre de muestra no esté vacío.
Source code in src/xps_analyzer/data_loader/core.py
validate_datasets
classmethod
Validar que el diccionario de datasets no esté vacío.
Source code in src/xps_analyzer/data_loader/core.py
get_dataset
Obtiene un dataset específico.
Parameters
filename : str Nombre del archivo del dataset a obtener. Returns
XPSDataset | None El dataset correspondiente o None si no existe.
Source code in src/xps_analyzer/data_loader/core.py
list_datasets
Lista todos los datasets disponibles.
Returns
list Lista de nombres de archivos de los datasets.
XPSSpectrum
Bases: XPSBaseModel
Representa un espectro XPS individual.
Attributes
Methods:
validate_arrays
classmethod
Validar que los campos sean arrays de NumPy y no estén vacíos.
Source code in src/xps_analyzer/data_loader/core.py
validate_positive_energies
classmethod
Validar que las energías sean positivas.
Source code in src/xps_analyzer/data_loader/core.py
validate_region_name
classmethod
Validar que el nombre de la región no esté vacío.
Source code in src/xps_analyzer/data_loader/core.py
validate_matching_lengths
Validar que los arrays tengan la misma longitud.
Source code in src/xps_analyzer/data_loader/core.py
Functions:
detect_file_format
Detecta automáticamente el formato del archivo XPS.
Parameters
filepath : str or Path Ruta al archivo a analizar.
Returns
str | None Tipo de formato detectado: - "multiplex": Formato multiplex propietario - "survey": Formato survey simple - "text": Formato de texto genérico - None: Formato no reconocido
Raises
FileNotFoundError Si el archivo no existe.
Examples
fmt = detect_file_format("data/sample_multiplex.txt") print(f"Formato detectado: {fmt}") Formato detectado: multiplex
Source code in src/xps_analyzer/data_loader/core.py
load_all_data
Carga todos los archivos de datos XPS desde un directorio.
Parameters
data_path : str or Path Ruta al directorio que contiene los datos XPS. recursive : bool, default=True Si True, busca archivos recursivamente en subdirectorios.
Returns
dict[str, XPSDataset] Diccionario con los datos cargados. Las claves son los nombres de archivo y los valores son los XPSDataset procesados.
Raises
FileNotFoundError Si el directorio no existe. ValueError Si la ruta no es un directorio.
Examples
data = load_all_data("data/raw/samples/") print(f"Cargados {len(data)} archivos") for filename, dataset in data.items(): ... print(f"{filename}: {len(dataset.spectra)} espectros")
Source code in src/xps_analyzer/data_loader/core.py
load_single_file
Carga un solo archivo de datos XPS. Parameters
filepath : str or Path Ruta al archivo de datos XPS. Returns
XPSDataset Objeto XPSDataset con los datos cargados.