2017-06-20 18 views
0
  **Point Forecast  Lo 80 Hi 80  Lo 95 Hi 95 account 
2017.4137  180.8861 103.03618 258.7361 61.8249012 299.9474 R00172 
2017.4164  181.3260 102.63465 260.0173 60.9779946 301.6739 R00172 
2017.4192  181.7658 102.24090 261.2906 60.1429756 303.3886 R00172 
2017.4219  182.2056 101.85468 262.5565 59.3194730 305.0917 R00172 
2017.4247  182.6454 101.47575 263.8151 58.5071341 306.7837 R00172 
2017.4274  183.0852 101.10391 265.0665 57.7056233 308.4648 R00172** 

次の出力がある 私の要件は、日付形式にこの2017.4137,2017.4164,2017.4192......... を変換することです。予測時系列データは以下のよう

esw<-rownames(df2) 
> esw 
    [1] "2017.4137" "2017.4164" "2017.4192" "2017.4219" "2017.4247" "2017.4274" 
    [7] "2017.4301" "2017.4329" "2017.4356" "2017.4384" "2017.4411" "2017.4438" 
[13] "2017.4466" "2017.4493" "2017.4521" "2017.4548" "2017.4575" "2017.4603" 
[19] "2017.4630" "2017.4658" "2017.4685" "2017.4712" "2017.4740" "2017.4767" 
[25] "2017.4795" "2017.4822" "2017.4849" "2017.4877" "2017.4904" "2017.4932" 

日付形式はIAMは、すべてのNAの取得

df2$dates<-as.Date(esw,format="%Y/%m/%d") 

df2$dates<-as.Date(esw,format="%Y/%m/%d") 

> df2$dates 
    [1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 
[31] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 
[61] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 
[91] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 

を取得するIAMことができません。 さらに進めていく方法を教えてもらえますか?ここで

おかげ

+0

どこから日付を取得していますか? – AK88

+0

format引数は、出力ではなく入力の形式を記述するためのものです。そして、私は入力を取得しません:それは1年の部分ですか? – FlorianGD

答えて

1

はlubridateを使用して日時形式にESWを変換する方法は次のとおりです。

esw <- c("2017.4137", "2017.4164", "2017.4192" , "2017.4219", "2017.4247", "2017.4274", 
       "2017.4301", "2017.4329", "2017.4356" , "2017.4384" , "2017.4411" , "2017.4438", 
        "2017.4466", "2017.4493", "2017.4521", "2017.4548", "2017.4575" , "2017.4603" , 
        "2017.4630", "2017.4658", "2017.4685" , "2017.4712" , "2017.4740" , "2017.4767" , 
        "2017.4795", "2017.4822", "2017.4849" , "2017.4877" , "2017.4904" , "2017.4932") 
esw <- as.numeric(esw) 
library(lubridate) 
format(date_decimal(esw), "%Y-%m-%d %H:%M:%S") 

[1] "2017-06-01 00:00:43" "2017-06-01 23:39:50" "2017-06-03 00:11:31" "2017-06-03 23:50:38" "2017-06-05 00:22:19" 
[6] "2017-06-06 00:01:26" "2017-06-06 23:40:33" "2017-06-08 00:12:14" "2017-06-08 23:51:21" "2017-06-10 00:23:02" 
[11] "2017-06-11 00:02:09" "2017-06-11 23:41:16" "2017-06-13 00:12:57" "2017-06-13 23:52:04" "2017-06-15 00:23:45" 
[16] "2017-06-16 00:02:52" "2017-06-16 23:41:59" "2017-06-18 00:13:40" "2017-06-18 23:52:47" "2017-06-20 00:24:28" 
[21] "2017-06-21 00:03:35" "2017-06-21 23:42:43" "2017-06-23 00:14:23" "2017-06-23 23:53:31" "2017-06-25 00:25:11" 
[26] "2017-06-26 00:04:19" "2017-06-26 23:43:26" "2017-06-28 00:15:07" "2017-06-28 23:54:14" "2017-06-30 00:25:55" 

あなたが唯一の日付と時間がないをしたい場合は年間の画分は、日付が重複につながる可能性があるため、注意してください。この場合、June 1 2017

format(date_decimal(esw), "%Y-%m-%d") 
[1] "2017-06-01" "2017-06-01" "2017-06-03" "2017-06-03" "2017-06-05" "2017-06-06" "2017-06-06" "2017-06-08" "2017-06-08" 
[10] "2017-06-10" "2017-06-11" "2017-06-11" "2017-06-13" "2017-06-13" "2017-06-15" "2017-06-16" "2017-06-16" "2017-06-18" 
[19] "2017-06-18" "2017-06-20" "2017-06-21" "2017-06-21" "2017-06-23" "2017-06-23" "2017-06-25" "2017-06-26" "2017-06-26" 
[28] "2017-06-28" "2017-06-28" "2017-06-30" 
+0

あなたの提案に感謝しています。 – Eswar

+0

上記のesw <-c( "2017.4137"、 "2017.4164")では少し疑問がありましたが、これらの2つは異なりますが、出力には"2017-06-01" "2017-06-01"(同じようにすべての日付が繰り返されます)、問題は何か分かりますか?上記で使用したformatコマンドに問題はありませんか? – Eswar

+0

@eswar答えの最初の部分を見ると、 "2017.4137"、 "2017.4164"は "2017-06-01 00:00:43" "2017-06-01 23:39:50"に対応しています。彼らは同じ日付だが異なる時代にいる。あなたがその時を見ないならば、それは同じ日付になります。 –

関連する問題