| LabAnalyst X
LabAnalyst X has seven menus, plus instructions and links in the Help menu and three functions in the LabAnalyst X menu.
This example of a block window shows the upper and lower limits of the data within the block. This particular block (being analyzed with the Integrate option) also shows:
MORE BLOCK HANDLING AND ANALYSIS TOOLS:
If no data block is selected, you can perform the following two operations (as well as Fast Fourier transforms):
To select points for analysis, move the cursor to the point of interest in the plot area and click once. Then move to the next point and repeat.
NOTE: this operation DOES NOT highlight the results window title when active, as can be seen in the example above.
If a data block HAS been selected, you can perform the following operations:
To get the integrated total for a rate function, such as oxygen consumption, make sure the correct rate unit is selected (i.e., 'per min' if the units are ml/min or 'per hour' if the units are ml/hour). A more sophisticated integration mode is available in the INTEGRATE BLOCK option.
Use the 'limits' buttons to restrict analysis to a subsection of the block (move the cursor to the block window and click when the limit line is correctly positioned).
The 'scale' button toggles scaling of the results (see SCALE RESULTS, below). The 'Store' button in this and other analysis mode windows allows you to directly transfer the current mean for use as a scaling factor. When you click 'Store', the scaling factors window appears. Click on any channel's "*" or "÷" button, and the current mean will appear in the first edit field (the multiplication or division factor) for that channel.
The 'distribution' button produces a small bar graph of frequency distribution. If the file has more than one channel, you can click on buttons for different channels and get those means (you can also use the keyboard to select channels). The (big) button shows a much larger and more detailed distribution:
Allow you to enter an interval (in seconds) and LabAnalyst X will search within the selected block for either the highest or lowest continuous average over that interval, or the most level or most variable region within the block.
Activating the 'reuse this interval' button in the interval selection window will bypass the interval selection routine during subsequent uses of these analyses (such as when using the AUTOREPEAT option for new blocks).
For the MOST LEVEL option, the 'most level' region is the interval in which the sum of absolute differences from the interval mean (i.e., the sum of Xi - meanX, or point-to-point variance) is lowest. Note that this is not necessarily the interval with the lowest slope, although this usually turns out to be the case.
For the MOST VARIABLE option, you can select to search either for the region with maximum overall slope or the region with maximum point-to-point variance.
When your interval selection is complete, click the 'interval OK' button and the program will find the appropriate interval and display the results in the next window, shown below.
After calculations, the maximal, minimal, or most level area is shown as a color-inverted rectangle on the block window.
As for BASIC STATS, you can switch to other channels, but in the default mode the interval boundaries remain constant -- i.e., the same beginning and ending points as on the initially scanned channel are used for other channels. This sounds confusing but it allows you to scan for the period of, say, lowest VO2 and then get the temperature, CO2, etc. for that specific period.
Alternately, you can activate the 'rescan new channels' button to force a re-scan of each new channel selected.
Two other considerations:
When using the MINIMUM VALUE... and MAXIMUM VALUE... functions, a button labeled 'C.V.R. data...' is available. This stands for Constant Volume Respirometry, and it opens a window that lets you set up the variables needed to compute O2 or CO2 exchange in a closed system. Note that this option assumes that the data being analyzed are in units of % gas concentration and that baseline has already been corrected.
You need to specify the gas type, the chamber volume, the elapsed time, the chamber temperature, the barometric pressure, the initial relative humidity in the chamber (if the gas contains water vapor), the initial concentrations of O2 and CO2 (FiO2 and FiCO2), and the respiratory exchange ratio (RQ). You also need to specify whether or not CO2 is absorbed prior to oxygen analysis ('excurrent CO2' buttons). When done, click the 'Selection OK' button.
When C.V.R. options is activated, the results window (example on the right) shows gas exchange rates in units of ml/min -- but note that only the mean value is computed as gas exchange (the SD, SE, etc. are shown in their original units). To switch off the C.V.R. calculations, click the 'C.V.R. data...' button.
There is a choice of time units (seconds, minutes, hours, days, none) and baseline values. The baseline for integration can be set at zero, the initial value of the block, the final value of the block, a user-specified value, or a proportional linear correction between initial and final block values. Because of the different baseline options, this operation is considerably more versatile than the integration feature including in BASIC STATS, MINIMUM, MAXIMUM, and LEVEL.
In this example, the block is integrated using the zero baseline option with the time unit set as minutes. Note that the start, end, and proportional options apply to the block defined with the left and right limit functions.
Keep in mind that you need to pick the time unit that matches the rate unit used in the channel being analyzed, or the results will not be valid. If you are using a rate unit for which a matching time unit is not available, you will need to adjust the results manually. For example, if your data are in units of Kilojoules/day, you will need to divide the results by the factorial difference between days and whatever unit you select. To continue with this example, if you set the units to 'hours' and your data are in KJ/day, you must divide the results by 24 (since there are 24 hours per day). Similarly, if you set the units to 'minutes', you would need to divide by the number of minutes per day (1440). This can be done conveniently using the 'Store' and 'Scale' buttons.
If you select the "Integration plot" option (button in the bottom row), the computer generates a plot of the integrated values over time. This plot will change whenever a new channel, right or left limit, or baseline option is selected.
This operation DOES NOT print to a tabular file (the output format isn't compatible since there are no SDs or SEs generated during integration).
LabAnalyst X contains three methods of analyzing the cyclical or waveform structure of a data set. These are the WAVEFORM, TIME SERIES, and FFT (fast Fourier transform) operations. All have different approaches, and the best one to use depends largely on the data set in question.
In the default mode the program will use all the data within the block. Alternately, 'filtering' is possible through cursor selection of minimum peak and valley values ('triggers') in the block window. Click the 'use cursor' button and move the cursor to the block window. A horizontal line will track the cursor's movement and a readout in the Results window will show the height of the cursor. Click once to select a peak (done first) or valley trigger. After selection, peak triggers are shown as pink lines, and valley triggers are green lines. The post-peak trigger value (default zero) is the number of cases the program 'skips' after finding a peak. This option can be useful when analyzing noisy files.
A typical results window is shown at right, above. Note that in this example the number of periods and amplitudes is correctly matched. The program beeps and prints a warning if no periodicity is found, if no amplitudes are found, or if the number of amplitudes does not equal the number of cycles +1 (indicating that some peaks were not associated with definable valleys, so the frequency or amplitude may be incorrect). The mean values for both peaks and valleys are also shown.
NOTE: The waveform algorithms are easily confused by noise (because of the way peaks and valleys are defined). If you are only interested in frequency, it is reasonably safe to reduce noise by smoothing data prior to analysis. However, smoothing reduces peak amplitudes (in some cases very dramatically), so it must be used with caution if you need peak height data. Smoothing is least damaging if peaks are 'rounded' and contain many more points than the smoothing interval. If necessary, use PAIRS DIFFERENCE to obtain peak heights, then obtain frequency data after smoothing.
The 'wave shape data' button opens a window with statistical information on the waveform's rise and decay times.
Rise time (the elapsed time from a valley to a subsequent peak) is shown in blue; decay time (the elapsed time from a peak to a subsequent valley) is shown in red. The small triangles indicate the means while the bars show the distributions.
If the data contain more than 10 peaks, additional analyses are available from the Peak and interval histograms button, which produces histograms of peak height (shown as the absolute value), wave amplitude (valley to peak) and interpeak interval (essentially the wavelength calculated on a peak-to-peak basis). An example is shown below.
The save data button stores a text file of the histogram values, the print graph button sends the data to a printer, and the square-root Y button shows the count as a square-root, which better shows bars with low counts.
Complex 'summed' frequency data occur frequently in biology (and in other areas of science). For example, you might want to use an impedance converter to measure the heart rate in a small mammal, bird, or lizard. Unfortunately, in addition to heart rate, you will also pick up signals produced by breathing movements. Therefore the instrument output will contain a confusing summation of the combined effects of breathing and heart rate. It may also contain 'noise' from random or irregular events (such as muscle movement from minor postural adjustments).
The messy-looking data shown at right are an example of such a waveform. Although it is obviously complex, a visual inspection suggests that it does contain some regularity. However, this periodicity is not readily studied with either the WAVEFORM or TIME SERIES operations. Fortunately, the FFT procedure can help find the important underlying components of this complex wave. In many cases it can detect basic cycles in a data set even if they are visually 'buried' by random noise.
After you select a block size, the program will show the block duration and then prompt you to go to the plot window and select the block to be analyzed. Do this by moving the cursor into the plot area, where it will outline a block of the size you selected. Fit the cursor block over the subset of data you wish to analyze and click the mouse once. This will select the desired FFT block.
Once the block is chosen, you can proceed transform it (Do FFT button), select another block size (by clicking the appropriate 'power of two' button), or exit. You may choose between showing a line or histogram plot of the results, and whether or not the results are smoothed.
After completing the FFT, the waveform's fundamental frequencies are shown graphically in the plot area. You can examine the details of this structure by moving the cursor over the plot; the fundamental frequencies that have been 'decomposed' from the original signal, and their amplitudes, are shown numerically as peaks in the results window.
In this example, the waveform from the first image (above) is seen to be composed of three discrete fundamental frequencies, which appear as the three sharp peaks in the plot area. The cursor is over one of the peaks, which has a frequency of 5.2757 Hz and a magnitude (useful for comparisons among peaks) of .7146 (these data are displayed in the results window). You have a choice of output units (frequency in Hz, kHz, etc.; period in sec, min, etc.)
After the transform is complete, you can expand or shrink the display, or smooth (or unsmooth) the data (the results in this example are smoothed).
FFT results are stored in channel zero (not normally used by LabAnalyst X); use the copy button to move them to a 'regular' data channel if you want to save them to disk(copying is only possible if the number of 'regular' channels is <24). In the latest versions, you can use the print button to produce an Excel-compatable spreadsheet containing the frequency data (in whatever units you select) and amplitudes.
Note that if you click the exit button, you are transferred to the plot area window in channel zero (which contains the FFT results). If you click the close box you are transferred back to the original data channel. If you chose the former, you can switch back to the regular channels by pushing the appropriate number key, or clicking the channel selection buttons in the upper right corner of the plot area. You cannot get back to the FFT results in channel zero except by re-running the FFT procedure.
Note that if you start the FFT procedure while using the multi-channel display mode, you'll be switched to single-channel mode (using the current active channel) prior to the beginning of analyses. At the conclusion of the FFT calculations you'll be returned to multi-channel mode IF you click the close box or (in FP versions) the plot area.
When the calculations are complete, a regression line is superimposed on the block window. The program computes slope, r-squared, and probabilities that the slope is either one or zero.
Two values of 'a' (the intercept) are given. One is based on the time change calculated from the start of the file (t=zero), and the other is based on the time change within the block, using the assumption that time zero is the start of the block.
You can switch channels (for new calculations) with the usual selection buttons on the bottom of the results window. To change the time units, re-select the original channel.
You can also test the slope against any user-defined value with the 'test' button.
Some additional considerations:
The initial step in the regression procedure is to chose the type of unit conversions. Linear (least-squares), semi-log (log Y = a+b*X or Y = a+b*log X), and log-log (log Y = a + b*log X) regression models are available. However, some of the conversions will not be available if the data range includes zero or negative values (since one can't take the log of a negative number).
Next, you select the two channels to regress, using the window shown at right. The program won't let you attempt to regress a channel against itself, so you may have to do some fancy button-clicking to get your channels selected.
After the 'selections OK' button is clicked, LabAnalyst X performs the calculations and produces a scatterplot of the data points in the block window (x values versus y values), along with the regression line.
The numerical results are the same as for the SLOPE vs TIME option described above -- except that only a single value of the intercept is shown.
You can test the slope against any user-defined value. Enter the slope into the edit field and click the 'test' button (very low probability values are shown as "<.00001").
The 'residuals' button will produce a scatterplot of residuals from the regression. 'Select new channels' lets you set up a new regression of different variables.
You can use the 'predict values' button to use the regression equation to predict X from a given Y, or vice versa:
Some additional considerations:
The program uses an iterative method to find the best-fit asymptote for a selected block of data, according to the simple model: Y = ln(asymptote - data). You can chose any number of iterations between 6 and 50. Using a lot of iterations might increase the accuracy of the estimate (this doesn't always occur), but will also increase the analysis time. In practice, you usually don't need to use more than 6 to 10 iterations for good accuracy. Note that if you give it 'messy' data that do not conform reasonably well to first-order kinetics, the program may take a long time to produce an estimate (and that estimate may have fairly glaring errors).
After completing the analysis, LabAnalyst X shows the asymptote, the coefficient of determination or C.D. (an estimate of the precision of the fit of the data to the model, and hence the precision of the estimated asymptote), the slope of the ln-transformed data, the rate constant (the fraction of the change between a starting value and the asymptote that is completed during 1 time unit), and the time to complete a fraction of the total change between a starting value and the asymptote (values from 1% to 99% are selectable from a pop-up menu). You can use your choice of time units (seconds, minutes, hours, or days) for slopes and rate constants.
LabAnalyst X also draws a goodness-of-fit plot that illustrates how closely the model matches the data. Points are plotted in yellow as the log (base e) of the absolute difference between the model predictions and the data:
Individual points are shown only if the total number of points in the plot is less than 60. The line predicted by the model is shown in white. In this example (not the same as for the previous figure), the analysis contained 31 points ranging in value from about 31.1 to slightly less than 0, with a predicted asymptote of -0.05. You can also plot the residuals from this regression.
Some additional considerations:
After completing the analysis, several options are available. The 'select new channels' button lets you change the X and Y variables. The 'make new chan from polynomial' button (only available if the number of channels is less than 24) generates a new channel by applying the current polynomial equation to the data in the X channel -- in other words, it computes and saves a new Y value for every sample in the X channel.
The 'show all r^2' button helps you select the most appropriate degree for the polynomial equation. The predictive value of a polynomial always increases as the degree increases. However, the increase in accuracy usually plateaus, so it is reasonable to use the simplest equation consistent with good predictive power. When the 'show all r^2' button is clicked, the program computes the r2 value for all degrees between 1 and 9, and then shows a bar graph of the results. [You can remove this plot by clicking the highlighted 'show all r^2' button.]
In the example shown at right, there was little change in predictive power until the degree of the polynomial exceeded 3, and then little additional change until the degree reached 8 and 9 (you can select the color of bar graph plots in the Colors and lines option in the VIEW menu.)
Some additional considerations:
An example time integration window is shown at right. The default minimum and maximum values are the lower and upper limits (respectively) of the data range in the block, which includes 100% of the data and results in a single event in each category. You can set new limits (as shown here) in three ways:
An example of event counting is shown below. The default minimum and maximum values are the lower and upper limits (respectively) of the data range in the block, which includes 100% of the data and results in a single event in each category.
You can set new limits in three ways:
Some additional considerations include:
An example of selective integration is shown at right. The default minimum and maximum values are the lower and upper limits (respectively) of the data range in the block, which includes 100% of the data and results in a single event in each category. You can set new limits (as shown here) in three ways: