Processed data files used in Schwartze et al 2024
收藏NIAID Data Ecosystem2026-05-01 收录
下载链接:
https://figshare.com/articles/dataset/Processed_data_files_used_in_Schwartze_et_al_2023/23631951
下载链接
链接失效反馈官方服务:
资源简介:
These are the datafiles used for the paper by Schwartze et al 2024 entitled "Initial and corrective submovement encoding differences within primary motor cortex during precision reaching" published in the Journal of Neurophysiology.
Data for 12 sessions of precision center out task from animals P & Q, both male, in data_extracted.zip
This processed data that has already been spike sorted and includes neural firing rates & spike times, joystick positions, and behavioral event information.
data_processiong.zip is provided as reference of matlab code used for processing
Trial timing:
Six timing events are present for each trial.
There names are given in TrialSettings.align_names: {'Start' 'Instruct' 'Move' 'Contact' 'End' 'Reward'}
Start - is the start of the trial which was when the cursor entered the center target and this is also what corresponds to the first bin of 100Hz joystick values and the SpikeFiringRates which are guassian-smoothed rates as well as time 0 in SpikeTimes which are organized by unit and then trial.
Instruct – is the cue when the target appears
Move – when the cursor left the center target
Contact – When the cursor contacted the target for the first time (Note they could leave and enter again, this information is stored separately, see below)
End – When the hold of the target was completed
Reward – When the Reward was started
For many analysis, it is likely you want to align on Instruct (2) or Move (3)
To find the timing of these events in individual trials, the information is present in:
TrialInfo.align_samples_plx : This is the sample (with 100Hz sampling) for the 6 events that line up with the joystick/cursor data and SpikingFiringRates, the 6 columns correspond to the 6 timing events, note Start is always sample 1 for the trial.
TrialInfo.align_times_plx: This is the time in seconds relative to the Start for each trial when the 6 events happened which can be used for SpikeTimes as well as calculating reaction and movement times. Again the 1st column is always 0.
If you want absolute time for the entire session, the start time for each trial is saved in TrialInfo.trial_start_time. This likely most useful if you want all spikes for a unit in a session available in AllSpikeTimes.
For this task, the cursor could enter and leave the target multiple times until a successful final hold of the target was completed. To get all times the cursor left or entered a target, timing information is available in TrialInfo.move_samples_plx/TrialInfo.move_times_plx and TrialInfo.contact_samples_plx/TrialInfo.contact_times_plx
move events are any time the cursor leaves a target (the 1st column is when the center target was left-a repeat of TrialInfo.align_samples_plx(:,3), all additional columns are times when the cursor left the peripheral target before completing a hold)
contact events are the times the cursor entered the peripheral target (the 1st column is a repeat of the first contact seen in TrialInfo.algin_samples(:,4)
Data structures:
SpikeTimes - unit x trial type cell array, each cell then has trial x 1 cell with spike times, all times relative to Start
SpikeFiringRates - trial x time x unit, estimated with firing rate in Hz with 30 ms width Gaussian, sampled at 100 Hz, sample 1 is Start
AllSpikeTimes - times of all spikes during a recording session, Cell array, Unit x 1
%
TrialSettings - Information about the task, 24 different trial types
TrialSettings.target_type_name tells if target was regular, narrow, or shallow
SpikeSettings - general settings for the recording session
%
TrialInfo - trial x 1 structure with timing information on each
individual trials
SpikeInfo - trial x 1 structure with timing information on each
individual trials, this was mainly what was used for extracting the
spike data, but what you want for analysis is probably in TrialInfo
%
JoystickPos_disp - trial x time x X,Y - Joystick position as measured by joystick sensor as sent to display on the screen,
this is likely the most accurate and best to use for analysis
JoystickPos - trial x time x X,Y -this is the raw Joystick position that was measured
CursorPos - trial x time x X,Y - this comes from the .h5 data file,
better for lining up with display and target contacts but slightly less
accurate for actual movement behavior
CursorSpeedRaw - trial x time x X,Y; calculated with 5-point central difference from JoystickPos_disp
CursorSpeedFilt - trial x time x X,Y;
%
PeakSettings - settings for the peak finding algorithm findpeaks
PeakInfo - Information about all the movement speed peaks in the trial
trial_ids_peakVel - which trial id the peak occurred
speedPeaksTroughs - 3 magnitude values -
1-minimum value before peak value, 2-height of peak, 3-minimum value after peak
speedPeaksTroughs_i - sample value in trial when the peak magnitudes occurred
initPeak_flag - locigal 1 - if first peak in trial, 0 - all other peaks, Note: there may be a rare number of trials with no initial peak
SpikeQuality - structure giving the measured quality of each units spike
channels - Plexon channel
units - Plexon unit
num_spikes - Number of spikes
T - total time when spikes occurred
mean_waveform - mean waveform of spike snippet
SNR - signal to noise: std(mean_waveform)/std(residual_noise), residual_noise = std(waves - mean_waveform)
SNR_max - signal to noise: max(abs(mean_waveform))/std(residual_noise)
SNR_p2p - signal to noise: (max(mean_waveform)-min(mean_waveform))/std(residual_noise)
%
ISI - inter spike interval,
maxISI - short ISIs were calculated with exclusionary period of maxISI = 1, 1.5, and 2 ms
minISI - minimum ISI that can be observed (0.675 ms)
shortISI - number of ISI violations that occurred in the 3 exclusionary periods
percentShortISI - shortISI/num_spikes
percentTrueISI - sqrt(.25 - (shortISI*T)/(2*(maxISI-minISI)*num_spikes^2)) + .5, exclusionary period is 1,1.5, or 2 ms minus 0.675 ms
percentMissedSpikes - (num_chan_spikes - num_spikes)*minISI/T
false_pos_gm - estimated number of false positives (other units' spikes labeled as the current unit) using a Gaussian mixture model
false_neg_gm - estimated number of false negatives (current unit's spikes labeled as a different unit) using a Gaussian mixture model
创建时间:
2023-07-06



