【发布时间】:2014-12-25 17:12:21
【问题描述】:
我有 10 月份的 20 天数据。这些数据来自不同的部门,但具有相同的列。 有 46 个变量(列),如下所示:
Date X24K.Equivalent.Plan X24K.Equivalent.Act Plan.Rep.WS Act.Rep.WS Rep.WS.Var Plan.Rep.Intakes
1 2014-10-18 29.0 28.8 2463 2447 -16 568
2 2014-10-19 29.6 31.0 2513 2633 120 461
3 2014-10-20 33.8 35.4 2869 3013 144 1159
4 2014-10-21 36.6 35.9 3115 3054 -61 1146
5 2014-10-22 35.3 34.7 2999 2953 -46 1126
6 2014-10-23 31.9 33.4 2714 2842 128 1124
请注意,我只显示 7 列。
我想将此月度数据转换为时间序列对象,以便我可以进行一些时间序列分析等。 我遇到的问题是:
1- 相同的数据来自其他 4 个业务部门,我必须创建 4 个时间序列对象吗?如果是,那么如何在同一时间序列图上绘制性能变化/差异?
2- 我不能绘制超过 10 个变量:/
我尝试了以下方法:
#convert date column into date format and add id
library(lubridate)
bvg1$Date = dmy(bvg1$Date)
> bvg1
Date X24K.Equivalent.Plan X24K.Equivalent.Act Plan.Rep.WS Act.Rep.WS Rep.WS.Var Plan.Rep.Intakes
1 2014-10-18 29.0 28.8 2463 2447 -16 568
2 2014-10-19 29.6 31.0 2513 2633 120 461
3 2014-10-20 33.8 35.4 2869 3013 144 1159
4 2014-10-21 36.6 35.9 3115 3054 -61 1146
5 2014-10-22 35.3 34.7 2999 2953 -46 1126
6 2014-10-23 31.9 33.4 2714 2842 128 1124
7 2014-10-24 29.0 31.9 2468 2714 246 1106
如果我将其转换为时间序列:
ts_bvg1 = ts(bvg1_withoutID)
它显示了一个奇怪的日期:
Date X24K.Equivalent.Plan X24K.Equivalent.Act Plan.Rep.WS Act.Rep.WS Rep.WS.Var Plan.Rep.Intakes
1 1413590400 29.0 28.8 2463 2447 -16 568
2 1413676800 29.6 31.0 2513 2633 120 461
3 1413763200 33.8 35.4 2869 3013 144 1159
4 1413849600 36.6 35.9 3115 3054 -61 1146
5 1413936000 35.3 34.7 2999 2953 -46 1126
6 1414022400 31.9 33.4 2714 2842 128 1124
7 1414108800 29.0 31.9 2468 2714 246 1106
如果我执行以下操作:
ts_bvg1 = ts(bvg1_withoutID, start=2014)
仍然以那种奇怪的格式显示日期,但添加了 2014 - 2020 等年份。
> ts_bvg1
Time Series:
Start = 2014
End = 2020
Frequency = 1
Date X24K.Equivalent.Plan X24K.Equivalent.Act Plan.Rep.WS Act.Rep.WS Rep.WS.Var Plan.Rep.Intakes
2014 1413590400 29.0 28.8 2463 2447 -16 568
2015 1413676800 29.6 31.0 2513 2633 120 461
2016 1413763200 33.8 35.4 2869 3013 144 1159
2017 1413849600 36.6 35.9 3115 3054 -61 1146
2018 1413936000 35.3 34.7 2999 2953 -46 1126
2019 1414022400 31.9 33.4 2714 2842 128 1124
2020 1414108800 29.0 31.9 2468 2714 246 1106
如何强制它将观察结果视为每天而不是每月或每年?
谢谢
【问题讨论】:
-
感谢您展示数据形状。如果我们有可重复的例子真的很棒,这些数据是公开的吗?顺便说一句,你奇怪的日期可能是自 Unix 时代以来的几秒钟
-
您好,感谢您的评论。不,此数据集是我组织内部的,抱歉,我无法与外界共享。知道如何解决我的问题。对于奇怪的日期格式,您可能是对的。
-
我明白,这是很常见的问题(机密数据)。这很痛苦,但如果您希望人们能够在这里为您提供帮助,官方推荐的方法是使用公共数据重现您的错误,然后让我们帮助您使用公共数据。顺便说一句,我能够成功转换这些时间戳。复制其中一个奇怪的日期并将其粘贴到此处epochconverter.com
标签: r time-series