Coder Social home page Coder Social logo

tssystem's Introduction

TSsystem

An open source custom Matlab Toolbox for the analysis of data consisting of a sequence of time-stamped events This code was designed and originally created by Adam King in the laboratory of Charles R Gallistel. It has been used by Gallistel and his students for 20 years to analyze behavioral and electrophysiological data. These data take the form of very long sequences of events (e.g. spikes, poke onsets, quarter turns of a running wheel, stimulus onsets, limb movements). These data naturally take the form of a 2-column long table in which 1 column is the time at which the event occurred and the other is a numerical code for the event. Adam King created 6 basic workhorse commands that take most of the tedium out of creating the code that digests such data. He was guided by three basic principles: 1) Keep it all together. 2) Make the sequence of analytic questions being posed easy to follow when reading the code. 3) Modularize the code. The guiding ideal was "One question, one line of code." That is, the analysis would consist of the user asking a question of the data and writing a single line of code that would give an answer to that question. The first principle (keep it all together) was is enforced by the basic design of the system: The raw data (the 2-column long tables, each for a given session and a given subject) are stored in the TSData fields at the third level (the Session level) of a 6-level Matlab structure. The inputs to the TS commands are the names of fields in this structure. The commands find the specified fields, read in their contents, operate on those contents, and store the results of those operations in a field within the same structure--generally, but not obligatorily, a different field from the input fields, and usually a field created by the command that operated on the data. Thus, the raw data and every result derived from that data are stored in the same Matlab structure. The analysis of the data involves the creation of a Matlab script. The intial cells in the script create the structure and read in the raw data. Subsequent cells use the high level commands in the TSsystem Toolbox to perform the analysis. Each cell poses a question and generates an answer to that question using a very few of the Toolbox commands. These commands hide the for loops and while loops that carry the analysis from subject to subject and session to session and trial to trial within session. In unmodularized code, these loops consume page after page of code and obscure the sequence of analytic ideas. The TS system makes the sequence of analytic ideas easily followed as one steps from cell to cell within the script.

tssystem's People

Contributors

crgallistel avatar

Stargazers

Brian Lau avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.