def test_conditionwise_spike_statistics_using_rates(spike_times_api):
    session = EcephysSession(api=spike_times_api)
    obtained = session.conditionwise_spike_statistics(
        stimulus_presentation_ids=[0, 1, 2], use_rates=True)

    pd.set_option('display.max_columns', None)
    assert np.allclose([0, 0, 6], obtained["spike_mean"].values)
Example #2
0
def test_conditionwise_spike_statistics(spike_times_api):
    session = EcephysSession(api=spike_times_api)
    obtained = session.conditionwise_spike_statistics(stimulus_presentation_ids=[0, 1, 2])

    pd.set_option('display.max_columns', None)

    assert obtained.loc[(2, 2), "spike_count"] == 3
    assert obtained.loc[(2, 2), "stimulus_presentation_count"] == 1
Example #3
0
def test_empty_conditionwise_spike_statistics(spike_times_api):
    # special case when there are no spikes
    spike_times_api.get_spike_times = types.MethodType(get_no_spikes_times, spike_times_api)
    session = EcephysSession(api=spike_times_api)
    obtained = session.conditionwise_spike_statistics(
        stimulus_presentation_ids=session.stimulus_presentations.index.values,
        unit_ids=session.units.index.values
    )
    assert(len(obtained) == 12)
    assert(not np.any(obtained['spike_count']))  # check all spike_counts are 0
    assert(not np.any(obtained['spike_mean']))  # spike_means are 0
    assert(np.all(np.isnan(obtained['spike_std'])))  # std/sem will be undefined
    assert(np.all(np.isnan(obtained['spike_sem'])))