Main content

Home

Menu

Loading wiki pages...

View
Wiki Version:
Geoffrey W Diehl and A David Redish Redish Lab, University of Minnesota Differential processing of decision information in subregions of rodent medial prefrontal cortex bioRxiv August 5, 2022 https://www.biorxiv.org/content/10.1101/2022.08.04.502840v1 This repo contains all of the data and code collected and analyzed for the cited manuscript. To load data, process it, and replicate the analyses and figures included in the manuscript load the full contents of the “Code” folder into a MATLAB path. This directory will contain all of the necessary analysis and support functions (in conjunction with MATLAB built-ins) to perform the requisite analyses. The function “ID_GWD_Dirs” should first be modified such that the RootDir field correctly points to where data has been placed locally. (An entry at the top of the “mPFC_eLife_MakeAllFigs” function can also be changed to identify the preferred output folder for saving figures). Initial analysis of raw data can be performed using the “mPFC_eLife_RunAllAnalyses” function. This will use raw data (spike times and behavior) to produce the necessary processed forms (Peri-Events, Mutual Information, Transfer Entropy, etc.). **Note, data is included in this repo in both the raw form and the processed form. ** Production of manuscript figures from processed data can be performed using “mPFC_eLife_MakeAllFigs”. The output directory listing at the top of this function should be changed according to the user’s preferred output location. DATA: General naming conventions All data are names according to a general convention of R###-YYYY-MM-DD designating the Rat Number in the Redish lab, and the Date on which the data were collected. (Thus, for example, R506-2019-01-25 designates data from Rat number 506 that was collected on Jan 25th, 2019). Physiology data is further designated with a suffix SiXX_YY designating that it was recorded using a silicon probe (Si), the probe number (XX), and the sequential unit number (YY) recorded on the respective probe. Units are counted for each probe independently and reset across subsequent recording days; no assumed correspondence of units across days. (Si01_03 designates the 3rd unit recorded on the first probe and Si02_04 would be the 4th unit on the second probe). **However, it is important to note that no assumptions can be made as to the location of the units on the probe from their numbering. Accessing the location of the units on the probe requires incorporation of the channel maps (see below).** Channel maps can be loaded using “GetChannelMap” to load the x-y locations of the recorded channels for subsequent sorting. Raw single unit isolated spikes (Processed physiology) .t files: Binary files containing the spike times of each spike recorded from the isolated unit in the form of 32bit unsigned integers. Spike times are in units of 100µSec aligned with the timing of the corresponding behavioral session. Data can be loaded using the “LoadSpikes” command which takes in a cell array of filenames and outputs ts objects with spiketimes now converted to seconds (still aligned to behavioral timestamps). The ts object is available in the ADRLAB-codeset/Objects directory and provides a container of sorted times. “LoadSpikes” can be called in the following format: S = LoadSpikes({‘R506-2019-01-25-Si01_01’; ‘R506-2019-01-25-Si01_02’}), which will load the spikes from .t files for the first 2 cells recorded from R506 on Jan 25th, 2019. Note that while this function can be called independently to load specific unit data, for analyses included here the function is called via the broader loading engine: “GWD_LoadRRowSession” which loads both spiking and behavioral data. Additional information on each function can be found in their respective documentations. WF.mat: MATLAB files containing the mean and standard deviations of spike waveform voltage across all 64 channels of a given silicon probe for the corresponding isolated unit. Data are stored as nSamples x nChannel matrices with samples taken at the recording system sampling rate (30kHz for Intan or 32kHz for Neuralynx; see corresponding channel maps). Data along nChannels are sorted to match the list of indices identified in the channel maps. Note that these channels are NOT sorted anatomically by default, but can be ordered according to the channel map information. Channel maps can be loaded using “GetChannelMap” to load the x-y locations of the recorded channels for subsequent sorting. Behavioral task outputs, tracking data, and metadata for each session (Processed Behav) Various MATLAB files associated with behavioral data. Each session is contained within its own directory. Note that the tracking and behavioral data for each session can be loaded using “GWD_LoadRRowSession”. For each session there is tracking data (-vt) that includes x-y positions, polar versions of this location (r,p), and the velocity, acceleration, and total distance traveled (v,a,d). Each field is a tsd object with matched time and data fields that can be accessed using the ts/tsd class functions. The tsd object is available in the ADRLAB-codeset/Objects directory and provides a container of sorted times and matched data entries. There is also a behavioral output file (-RRow) that contains the information used to run the task and behavioral responses from it. This contains the response times and identities for each action taken through the task. Finally, a metadata keys file (_keys) containing various information about the session specifically. Much of this information is also present in the DataDef file (see below). Also included are aggregate behavioral data files (LapData, SessionData, IdPhi) that collect up all of the behavioral data across sessions and organize it into a useful structuring. Fields in session data are nSessions long with indices corresponding to the index listing in the dataDef file, and to both the LapData, and IdPhi structures. LapData and IdPhi have fields that are size: nSess x nLaps x nZones where laps correspond to the number of visits to a particular restaurant (backfilled to 125 with nans) and zones correspond to the sequence around the RRow track. Zones 1-4 correspond to Wait Zone behavior, and 5-8 are the matching Offer Zones. These structures are built using the “collectRRowDataToAnalyze” function and used in a variety of ways. Histology (Misc) .TIF files of the histological sections showing the track of each silicon probe through the brain. One image is included for each probe and named according to Rat, Probe number (corresponding to channel map), and target structure (PL vs IL for dorsal vs ventral). TIF files can be loaded using photoshop or other standard image viewers. Full Experiment dataDef w/ metadata for all sessions (Misc) DataDef_RRow: A MATLAB structure containing various metadata and various aggregate behavioral results from the 104 sessions included in the study. Note that all sessions were during recording conditions and stable behavioral performance. This file is largely used as a refence for pointing to particular sessions of interest. Channel Maps of recordings probes (Misc) ChannelMaps: A txt file included for each recording probe included in the study. Note that “ProbeA” channel maps correspond to Si01 and the first of the probes while “ProbeC” channel maps correspond to Si02 and the second of the probes. Note that which probe was dorsal vs ventrally targeted varied across rats. Channel maps include all of the requisite information for loading originally recorded data, passing it through Kilosort processing, naming output files, and referencing those files including information about position of each channel along the probe shank. Each entry is a single vector and indices correspond across all channel map entries (and to the saved WF file). Channel maps can be loaded into matlab using the “GetChannelMap” or “GetChanelMap_kilosort” functions. The primary purpose of these files is identifying WF channel depths along the respective probe and sorting data accordingly (see “FindUnitLocation_mPFC” and “localizeUnitsAlongProbe"). Analyzed/Processed data used in the manuscript (Analysis) Various matlab structures containing the processed data and analysis results used to draw the finding for the manuscript. Largely these structures contain two fields: Params and Results. Params includes various information about the sessions/cells that were computed in the analysis, the behavioral identifiers, and details about the particular analysis (e.g. bin widths, shuffling methods, etc.). Results contains fields for each run of the analysis as well as a field containing the results after shuffling spike times. For each run, data typically include the average result across restaurant visits (nSess long cell, with each cell being nCells x nbins), the variance of those visits (specifically the std), and the occupancy in each bin (e.g. proportion of visits in which rats were in the respective zone and thus the time bin was valid for analysis). Note that occupancy is identical across simultaneously recorded cells and so is only nBins long. Shuffled fields contain the Avg across all shuffles (typically 30), the std across them, and one example run w/ shuffled spike times. CODE: ID_GWD_Dirs: Directories listing pointing to where everything is. The RootDir MUST be changed according to the rootdir of the user. **Additionally, the top of the “mPFC_eLife_MakeAllFigs” function directs where figures will be saved to and should also be changed according to user preference.** Initial Analysis: Code to convert the raw data (single unit spikes and behavior) into analyzed data (PETHs, correlations, TE, etc.) The function “mPFC_eLife_RunAllAnalyses” acts as a condensed shell function that will run through each of the various analysis functions contained within this folder. Final Processing: Code to take analyzed data and produce figures, stats, etc. The function “mPFC_eLife_MakeAllFigs” acts as a condensed shell function that will run through and make all of the figure outputs. The top of this function contains the root output directory where figure files will be saved. This MUST be changed to according to the user’s needs. ADRLAB-codeset: Redish Lab codeset (also available at https://github.umn.edu/RedishLab/ADRLAB-codeset). Contains all methods associated with the ts/tsd object classes that are employed throughout the included code. GWD_RRow General: Internal processing code for analyzing RRow/mPFC specifically. None of these functions need be called specifically, but are required for proper functioning of all other analysis pieces. Many/most of these functions are valuable for analysis of the RRow/mPFC data set but will have limited (if any) utility more broadly. Misc Utilities: General utility code non-specific to this project, but used in the code set. None of these functions need be called specifically, but are required for proper functioning of all other analysis pieces. Many of these functions are general tools/utilities and are in no way specific to this project. Other Code: Code acquired from elsewhere (file-exchange, Timme et al). All attempts are made to retain original authorship credits in the code provided here. Failures to provide credit are the result of oversight and not deliberate.
OSF does not support the use of Internet Explorer. For optimal performance, please switch to another browser.
Accept
This website relies on cookies to help provide a better user experience. By clicking Accept or continuing to use the site, you agree. For more information, see our Privacy Policy and information on cookie use.
Accept
×

Start managing your projects on the OSF today.

Free and easy to use, the Open Science Framework supports the entire research lifecycle: planning, execution, reporting, archiving, and discovery.