yasa.SWResults.compare_channels#
- SWResults.compare_channels(score='f1', max_distance_sec=0)[source]#
Compare detected slow-waves across channels.
This is a wrapper around the
yasa.compare_detectionfunction. Please refer to the documentation of this function for more details.- Parameters:
- scorestr
The performance metric to compute. Accepted values are “precision”, “recall” (aka sensitivity) and “f1” (default). The F1-score is the harmonic mean of precision and recall, and is usually the preferred metric to evaluate the agreement between two channels. All three metrics are bounded by 0 and 1, where 1 indicates perfect agreement.
- max_distance_secfloat
The maximum distance between slow-waves, in seconds, to consider as the same event.
Warning
To reduce computation cost, YASA rounds the start time of each spindle to the nearest decisecond (= 100 ms). This means that the lowest possible resolution is 100 ms, regardless of the sampling frequency of the data. Two slow-waves starting at 500 ms and 540 ms on their respective channels will therefore always be considered the same event, even when max_distance_sec=0.
- Returns:
- scores
pandas.DataFrame A Pandas DataFrame with the output scores, of shape (n_chan, n_chan).
- scores
Notes
Some use cases of this function:
What proportion of slow-waves detected in one channel are also detected on another channel (if using
score="recall").What is the overall agreement in the detected events between channels?
Is the agreement better in channels that are close to one another?