Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: How does one get data out of a TemporalData object?
Replies: 7   Last Post: Jun 20, 2013 4:02 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Andy Ross

Posts: 30
Registered: 7/22/10
Re: How does one get data out of a TemporalData object?
Posted: Jun 19, 2013 1:22 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

My mistake, it only returns the interpolated states, not time-value
pairs. It is easy enough to get both if you want them though.

Table[{t, data["SliceData", t][[1]]}, {t, 0, 20, .1}]

-Andy

On 6/17/2013 8:08 AM, Andy Ross wrote:
> Does the following do what you want?
>
> Plot[data["SliceData", t], {t, 0, 20}, Filling -> Bottom]
>
> The "SliceData" property performs the same interpolation as
> ListLinePlot in this case (can be controlled via Method option) and
> returns time-value pairs.
>
> -Andy
>
> On 6/17/2013 5:29 AM, Joe Gwinn wrote:

>> In article <kpjvbv$9mc$1@smc.vnet.net>, Andy Ross <andyr@wolfram.com>
>> wrote:
>>
>> Andy,
>>

>>> TemporalData has a number of properties for extracting the parts you
>>> need. To get the paths with time stamps use TemporalData[...]["Paths"].
>>> To get the states use TemporalData[...]["States"].
>>>
>>> I recommend looking at the details section of the documentation for
>>> TemporalData to see the full list of properties and read through the
>>> examples on that page to see how each is used.

>> I had looked over the documentation, and nothing jumped out. I looked
>> at every mention of TemporalData, and found nothing that seemed
>> suitable.
>>
>> But I didn't try States, so I just did. It yields a list of alternating
>> 1 and 2 values, which isn't a complete answer to the problem, as the
>> time values are missing. If one just uses Fourier[], one will get some
>> kind of Periodogram, which is not what is sought.
>>
>> Let me give a code example:
>>
>> \[ScriptCapitalP] = ContinuousMarkovProcess[{1, 0}, ({
>> {-3, 3},
>> {1, -1}
>> })];
>> data=RandomFunction[\[ScriptCapitalP],{0,20}]
>> Fourier[data]
>>
>> This yields a complaint:
>> Fourier::fftl:
>> (((((("\"Argument \!\(\*TagBox[\nRowBox[{\\\"TemporalData\\\",
>> \\\"[\\\", PanelBox[" 1) ", FrameMargins->Small], \\\"]\\\"}],
>> InterpretTemplate[TemporalData[Automatic, {{{1, 2, 1, 2, 1, 2, 1, 2, 1,
>> 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1}}, {{{0``15.954589770191005,
>> 0.01520207123587128013320057817736596917`14.129940038322594,
>> 0.95824522046395536932862513249273766604`15.644199356725549,
>> 1.53128564596308252148382664967984035205`15.736304825316484,
>> 2.28962713530000690099771260582537312886`15.797207858258304,
>> 3.28670141416927664988333023187555326092`15.839226787640209,
>> 3.38168097695521799981621844019305806672`15.842081650549387,
>> 4.0716904019295301685379386805431332727`15.859211783981653,
>> 5.25370702200219072713176547011226038622`15.878918089214274,
>> 5.91828379716574832280816964564910319058`15.88678718369098,
>> 6.12633788645240157414249230434964341735`15.888924305967711,
>> 6.19666658844600659408879868858704605186`15.889616516866917,
>> 9.58526332575202981025003709494096121015`15.911492152203763,
>> 9.8441361181069966832633195553354003832`15.912572420088354,
>> 14.33613695082054447978910756738149487066`15.925305933162454,
>> 14.96549983870748084202749476200455050281`15.926498477053611,
>> 15.17014786638371663403108748271496533041`15.92686559286194,
>> 15.36161929373388768828517022927544623659`15.927200484830422,
>> 15.67573549317739061376647722217804251544`15.927732699101226,
>> 15.8362986262877527919959498312816012794`15.927996832624787,
>> 16.94396941821241069345266065715083372759`15.929686408696478,
>> 17.04737697478590359190098510749722701209`15.929833245160726,
>> 22.73457835309395939446096043959096018021`15.93589515332067}}}, 1, {")
>> Discrete) ", 1}, {") Continuous) ", 1}, 1, {}}]& ], Editable->False,
>> SelectWithContents->True, Selectable->True]\) is not a non-empty list
>> or rectangular array of numeric quantities.\"")
>>
>> Now, note that the following appears to work:
>>
>> plot1 = ListLinePlot[data, InterpolationOrder -> 0,
>> PlotRange -> {1, 2.1}, Ticks -> {Automatic, {1, 2, 3}},
>> Filling -> Bottom]
>>
>> But when I do this:
>>
>> datainter =
>> Interpolation[Normal[data] // First, InterpolationOrder -> 0]
>> plot2 = Plot[datainter[t], {t, 0, 20}, PlotRange -> All,
>> Filling -> Bottom]
>>
>> I get a different answer, and other paths yield yet other answers.
>>
>>
>> What I'm looking for is for instance a function that can be called from
>> Table[] to yield a list of equispaced samples suitable for Fourier[].
>> The locations and interval between samples may vary as needed to keep
>> Fourier happy - list length will be an exact power of two, and there
>> may be zero padding added.
>>
>> Thanks,
>>
>> Joe Gwinn
>>
>>

>>> Andy Ross
>>> Wolfram Research
>>>
>>> On 6/15/2013 3:25 AM, Joe Gwinn wrote:

>>>> I would like to generate some random signals for use in exploring
>>>> signal-processing algorithms.
>>>>
>>>> For use as synthetic signals for the algorithm to chew upon, I'd like
>>>> to use ContinuousMarkovProcess and TelegraphProcess with
>>>> RandomFunction. With these, I can do statistics and plot things
>>>> freely.
>>>>
>>>> What I cannot quite get is a time series ready for such indignities as
>>>> Fourier[].
>>>>
>>>> Now I can manually disassemble the data structure, but I don't find a
>>>> list of equispaced samples, I get a transition list, which is not the
>>>> same thing.
>>>>
>>>> Interpolation[Normal[temporal data object] // First,
>>>> InterpolationOrder
>>>> -> 0] almost works, but the fine details are smeared over, even though
>>>> InterpolationOrder -> 0 works in ListLinePlot et al without apparent
>>>> smearing.
>>>>
>>>> What am I missing? It seems like Probability and Statistics has
>>>> become
>>>> a walled city within Mathematica. I'm hoping to find a door in the
>>>> wall,
>>>> rather than be forced to build by own little city one brick at a time.
>>>>
>>>> Joe Gwinn
>>>>

>>>
>





Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.