Mathematica introduced TemporalData
in Mathematica 9. Mathematica 10 added several fantastic new TimeSeries
manipulation tools -- tools that would come in handy for non-temporal data.
For example, I would love to use Resampling
, MovingAverage
, TimeSeriesAggregate
, etc on wavelength scans, ie Fluorescence Intensity vs wavelength. At the moment, I have been treating wavelength as AbsoluteTime
values.
filter = TimeSeries[{{0.525, 0.}, {0.526, 0.}, {0.527, 0.}, {0.528,
0.}, {0.529, 0.}, {0.53, 0.001}, {0.531, 0.001}, {0.532,
0.002}, {0.533, 0.002}, {0.534, 0.003}, {0.535, 0.004}, {0.536,
0.006}, {0.537, 0.01}, {0.538, 0.015}, {0.539, 0.026}, {0.54,
0.046}, {0.541, 0.092}, {0.542, 0.132}, {0.542, 0.189}, {0.542,
0.256}, {0.543, 0.361}, {0.544, 0.464}, {0.544, 0.556}, {0.544,
0.618}, {0.545, 0.644}, {0.546, 0.644}, {0.546, 0.626}, {0.546,
0.605}, {0.547, 0.575}, {0.548, 0.533}, {0.548, 0.476}, {0.548,
0.396}, {0.549, 0.324}, {0.55, 0.241}, {0.55, 0.178}, {0.55,
0.13}, {0.551, 0.094}, {0.552, 0.069}, {0.552, 0.051}, {0.553,
0.03}, {0.554, 0.019}, {0.555, 0.012}, {0.556, 0.008}, {0.557,
0.006}, {0.558, 0.004}, {0.559, 0.003}, {0.56, 0.002}, {0.561,
0.002}, {0.562, 0.001}, {0.563, 0.001}, {0.564, 0.001}, {0.565,
0.}, {0.566, 0.}, {0.567, 0.}, {0.568, 0.}, {0.569, 0.}, {0.570,
0.}, {0.571, 0.}, {0.572, 0.}, {0.573, 0.}, {0.574, 0.}, {0.575,
0.}}];
filter["Times"][[1 ;; 4]]
DateString /@ filter["Dates"][[1 ;; 4]]
Yields
{0.525, 0.526, 0.527, 0.528}
{"Mon 1 Jan 1900 00:00:00", "Mon 1 Jan 1900 00:00:00", "Mon 1 Jan \
1900 00:00:00", "Mon 1 Jan 1900 00:00:00"}
It appears to work, but it seems a bit of a kludge. Is there an equivalent Series
that allows non-temporal independent variable with appropriate units?