"Time series filtering / intervals"

AlexusAlexus MemberPosts:7Contributor II
edited June 2019 inHelp
Hey there,

I would like to know if I can prepare time series (financial, i.e. eurusd) in the following ways in rapidminer:

1.从所有的数据,即提取所有周一and make a new table
2. from all data, i.e. extract only 8:12am mondays and make a new table
3. given a table with dates and times, for example 10 datasets that contain different dates and times, rapidminer should then look at another table with finanical (tick) data and make a new table which contains only data starting with the dates from the first table, plus X hours afterwards.

and similar tasks. In short, I would like to make new time series from (tick)data with the parameters I choose, and/or from dates from other tables.

Is that possible with rapidminer?

And another question: Whats the technical term for such actions?

Answers

  • AlexusAlexus MemberPosts:7Contributor II
    And if so, which version of rapid miner is capable of doing that? Is the community edition enough?
  • 韦塞尔韦塞尔 MemberPosts:537Guru
    Hey,

    With high probability, yes to all questions.
    Here is a demo.

    Best regards,

    Wessel







    <输出/ >
















    < from_op = " Da连接te to Numerical" from_port="example set output" to_op="Filter Examples" to_port="example set input"/>







  • AlexusAlexus MemberPosts:7Contributor II
    Hey, thats great! You have NO idea how long I have been searching for software thats capable of that, unfortunately I did not know what to search for exactly...

    Is there a tutorial I can look at, that you know, to get me started?
  • AlexusAlexus MemberPosts:7Contributor II
    And whats the technical term for this kind of operations that I want to do?
  • 韦塞尔韦塞尔 MemberPosts:537Guru
    There is no technical term that I am aware off.
    The best definition I can come up with is:
    http://en.wikipedia.org/wiki/Unix_time

    All these operations boil down to the basics of converting a date back to an integer holding the number of milliseconds after 1970.
    E.g.http://www.vogella.com/articles/JavaDateTimeAPI/article.html

    Best regards,

    Wessel
  • AlexusAlexus MemberPosts:7Contributor II
    I don't quite get it - how does i.e. extracting all mondays out of a time series that contains monday to friday into a new time series that only contains mondays relate to unix time?
  • AlexusAlexus MemberPosts:7Contributor II
    I don't know if we understand each other? in MYSQL terms I would try a command like (not a working example I guess):

    select * from table where date = monday and time between 8-12

    or something along those lines. I have not found out yet how to do similar things in rapidminer
  • 韦塞尔韦塞尔 MemberPosts:537Guru
    Alexus wrote:

    I don't quite get it - how does i.e. extracting all mondays out of a time series that contains monday to friday into a new time series that only contains mondays relate to unix time?
    To make this calculations, Rapid MIner uses code that is provided in any standard Java Installation.
    E.g.http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Calendar.html

    Think about it, how would you implement this code if you had to do it from scratch?
    For a lot of stuff milliseconds are really useful.
    If you represent time as an integer holding the number of milliseconds after 1970 you can simple compare dates using the ">" operator.
    And you can do stuff like:
    if A = Monday
    then so is A+=7 *24 * 60 * 60 * 10000
  • AlexusAlexus MemberPosts:7Contributor II
    I see. Thanks for your explanation. I conclude from your examples that its not yet possible to to this kind of task via the gui, right? If I have to do this via coding(i.e. in java), then I think preparing the data via SQL might be the easier way.
  • 韦塞尔韦塞尔 MemberPosts:537Guru
    I do not agree with your conclusion.
    Did my first example not show you how to do this within Rapid Miner?
    And then I tried to explain you the underlying methods that make it work.
Sign InorRegisterto comment.