Data Theory
From QuB
| Prev: Tutorial:Basic Model | Outline | Next: Algorithm Theory |
Contents |
Basic Structure
Segments and samples
A data file consists of one or more segments of sampled data. Each segment has a start time; thus two adjacent segments may be separated in time.
Samples are regularly spaced according to the sampling rate, in msec or kHz. QUB stores samples as integers. They are interpreted as floating-point voltages using a scaling factor: V = intval / scaling.
A/D Channels
A data file may have more than one A/D channel, corresponding eg to multiple input lines. A/D channels are numbered 0, 1, 2, ... Most operations act on just one A/D channel. This is the active channel, 0 by default.
A sampled value of 1V indicates a measured quantity that depends on the experiment and acquisition hardware settings such as gain. For example, 1V could mean 2 pA. Each A/D channel has
- name -- defaults to something boring like AI Channel 0, but you can change it
- units -- e.g. pA
- scaling (V/units) -- e.g. 1V/2pA = 0.5
Choosing a Scaling value
When you simulate or import data, QuB asks for a Scaling value.
For simulations, and text and floating point imports, you want to choose a scaling factor so that (max pA * scaling) < 32767 [the max 16 bit int] and (delta pA * scaling) > 1 for the smallest significant delta. The default of 320 covers a range from roughly 0.01 to 100.0.
For binary imports, QuB might not find Scaling in the file. Ideally you would know this number, which depends on your acquisition setup. If you don't, follow this procedure:
- measure a peak (yorig) in the original data, original program; preferably just the highest point.
- open the file in QuB
- leave Scaling as it is
- go to Data Properties and set Channel Scaling (V/Units) to 1.
- measure the peak in QuB (yqub)
- yqub is computed by yqub = ydisk / ChannelScaling
- ChannelScaling is 1 so yqub = ydisk
- find ChannelScaling so that yorig = yqub = ydisk/ChannelScaling
- ChannelScaling = yqub / yorig
- set Channel Scaling and re-measure to verify
When importing data there is an option to "Est[imate] Scaling" based on the first several data points. The estimate could be bad (too big) if the data starts with a long stretch of baseline.
Additional Information
Selection Lists
A selection is a range of data points. A data file can have several lists of selections. You might
- make a list of bursts, excluding long closures
- analyze the list (with Data Source: List) to see how quantities like open probability vary across selections. See Tutorial:Single Channel Kinetics#Heterogeneous Bursts
- make a list of annotations -- each selection has a label which is drawn over it on the data. Acquisition Notes lets you build such a list using predefined labels, and Acquisition:Add Note lets you quickly type a new label.
- make a list of the usable portions of a recording and Extract them to a new data file
Experimental conditions
QUB can store the experimental conditions a data file was acquired with, such as voltage Each named experimental condition is described by:
- value -- condition stays at this constant value throughout the whole file
- channel -- condition's value is given by this A/D channel at each sample
- conditioning -- the holding value before each segment; honored by only a few algorithms such as Modeling:Mac.
Baseline
Baseline correction involves defining a baseline for each A/D channel and subtracting it from each sample. QUB has two kinds of baseline. One is a constant offset, which is always subtracted. (see Data: Set baseline) The other one changes with time, and subtracting it from the data is optional. It is the linear interpolation between nodes. Nodes can be added manually or by an algorithm (see Modeling:Idl/Base).
Idealization
The idealization layer overlays the sampled data with events (also called dwells or sojourns). This is a compact description of data which fluctuates between a small number of amplitude levels, such as open (1 pA) and closed (0 pA). An event is just (which level, for how long). The idealization is a list of events.
The idealization is used to calculate quantities such as Popen (occupancy probability of the open level), and is used by MIL for fast kinetic optimization.
Dead time
Dead time is a parameter specific to MIL. It is the length of the longest undetected event.
Notes
QUB provides a text box for your notes about the current data file. (See Data Notes)
Data File Types
Sampled data
| .qdf | QUB Data File | Multiple A/D channels of segmented data; stored as a QUB tree | |
| .ldt | QUB legacy data | One A/D channel of segmented data (for details see LDT reference) | |
| .abf | Axon Binary File | Multiple A/D channels of segmented data. May contain additional information that QUB ignores. | |
| .dat | Raw binary data | You tell QUB how many A/D channels and how many bytes per sample. Unsegmented. | |
| .txt | ASCII text | a tab-delimited table of numbers; one column per A/D channel; the first column can hold time values; blank lines can indicate segment breaks | |
| .wav | Sampled audio | one or two channels, unsegmented, typically used only for sound | |
| .pul | HEKA Pulse file | describes the raw .dat file which accompanies it. | |
| .ibw | Igor Binary Wave | Multiple A/D channels, unsegmented |
Idealized data
| .dwt | QUB dwell time file | (for details see DWT reference) |
| .evl | Axon legacy event list |
Session Files
QUB saves a session file (.qsf) alongside each data file, regardless of the data file's type. The session file stores everything described in this chapter past Sampling, along with display settings. It is updated whenever you save or close a file. When you move, copy or send data files, remember to include the QSF file of the same name.
To update the session file, "Save Data" (File menu). The actual data won't be re-written unless it is modified.
Session files are stored as QUB trees.
| Prev: Tutorial:Basic Model | Outline | Next: Algorithm Theory |
