【问题标题】:Creating a Time Series with Half Hourly Data in R在 R 中创建具有半小时数据的时间序列
【发布时间】:2018-06-17 14:19:26
【问题描述】:

这是我第一次在 Stack Overflow 上提问,而且我是一名编程新手,因此,如果有任何关于如何提高我的提问能力的建议,我们将不胜感激。

关于我的问题:我有两个 csv 文件,一个包含三列(日期时间为 dd/mm/yyyy hh:(00 或 30) 格式、某种产品的生产以及对该产品的需求),以及其他包含几列(将日期时间分解为年、月、日、小时,以及分别由 1 或 2 表示的:00 或 :30,以及可能影响所述产品生产/需求的自变量的几列)。

我只玩过第一个 csv 文件,将字符串转换为 datetime 对象,但 ts() 函数不会将 datetime 对象识别为我的时间。我试过调整频率参数,但最终失败了,不知道如何使用半小时数据创建时间序列。将不胜感激。

提前致谢!

【问题讨论】:

  • 你能告诉我们你已经尝试了什么吗?对你个人无视,但有很多人声称尝试过某事,但最终他们只是在找人做他们的工作。
  • @Dominique 我还不完全确定如何在我的帖子中创建漂亮的代码块,但我希望你能看到我尝试粘贴的内容:library(datetime ) 数据

标签: r


【解决方案1】:

我的建议是对所有时间数据应用“difftime”。例如,像下面的代码一样,您可以将所有比较的初始时间(第一条记录的时间)用作 time_start,将其他时间用作 time_finish。然后它将时间间隔作为秒数返回,然后您就可以使用其他列值作为时间戳的值了。

interval=as.integer(difftime(strptime(time_finish,"%H:%M"),strptime(time_start,"%H:%M"),units = "sec"))

秒 0 10 15 ....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-13
    • 1970-01-01
    • 2021-01-13
    • 1970-01-01
    • 2020-07-04
    • 2019-02-05
    • 2023-04-02
    相关资源
    最近更新 更多