resonance.api.validation¶
resonance.api.validation
¶
DataFrame validation utilities for scan plan creation
find_exposure_column(df)
¶
Find exposure time column using pattern matching.
Handles common variations: - "exposure", "exp" - "count_time", "count time" - "Unnamed: 2" (pandas default for unnamed columns) - "" (empty string column name)
Parameters: df: Input DataFrame
Returns: Column name if found, None otherwise
Source code in src/resonance/api/validation.py
validate_motor_columns(df)
¶
Validate that DataFrame columns match known motor names.
Parameters: df: Input DataFrame
Returns: List of valid motor column names
Raises: ValidationError: If invalid columns found or no motor columns present
Source code in src/resonance/api/validation.py
validate_scan_dataframe(df)
¶
Validate complete scan DataFrame.
Parameters: df: Input DataFrame with motor columns and optional exposure column
Returns: Tuple of (motor_column_names, exposure_column_name)
Raises: ValidationError: If validation fails