Skip to main content

feature_calculators.IBLPIDFeatureCalculator

feature_calculators.IBLPIDFeatureCalculator(
    pid,
    one,
    eid=None,
    probe_name=None,
    name=None,
    neuropixel_version=1,
)

Feature calculator for an IBL probe insertion loaded through ONE.

Args: pid (str): Probe insertion ID. one: ONE or OneSdsc client. eid (str, optional): Session ID. Required for OneSdsc clients. probe_name (str, optional): Probe name. Required for OneSdsc clients. name (str, optional): Output identifier. Defaults to pid. neuropixel_version (int): Neuropixels version passed to destriping.

Raises: AssertionError: If an OneSdsc client is used without eid or probe_name.

Note: AP/LF readers and channels are loaded lazily and cached on the instance. The one client cannot be pickled, so this calculator cannot be sent to other processes: use n_jobs=1 with compute_denoised_features and compute_aggregated_features.

Attributes

Name Description
ssl Return the lazily constructed SpikeSortingLoader.
stream Return whether raw electrophysiology should be streamed.

Methods

Name Description
enrich_channel_metadata Add probe metadata and optional target coordinates from Alyx trajectories.
load_channel_metadata Load channel metadata from ONE/ALF with geometry fallback.

enrich_channel_metadata

feature_calculators.IBLPIDFeatureCalculator.enrich_channel_metadata(
    channels,
    options,
)

Add probe metadata and optional target coordinates from Alyx trajectories.

Args: channels (pd.DataFrame): Channel metadata. options (FeatureComputationOptions): Current computation options.

Returns: pd.DataFrame: Channel metadata with probe_model and referencing_scheme columns, plus optional x_target, y_target, and z_target columns.

Raises: ValueError: If trajectory metadata are required but cannot be loaded.

load_channel_metadata

feature_calculators.IBLPIDFeatureCalculator.load_channel_metadata()

Load channel metadata from ONE/ALF with geometry fallback.

Returns: pd.DataFrame: Channel metadata keyed by channel.