tidyverse
とlubridate
で時系列ベクトルを生成する効率的な方法はありますか?私は2人がseq()
と働くことができることを知っています。たとえば、入力して:Rとlubridateを使用してシーケンスを生成する
seq(today(), today()+dyears(1), 60)
1は
"2017-02-14" "2017-04-15" "2017-06-14" "2017-08-13" "2017-10-12" "2017-12-11" "2018-02-09"
しかし、60日の間隔で一連の日付を取得することができ、これは週間、のために働くことができることをどのような方法があります月と年も同様ですか?私は仕事だろうと思ったけどなかった以下のコードに似おそらく何か:
seq(as_date(2000-01-01), as_date(2017-01-01), dyears(1))
Error: Incompatible duration classes (Duration, numeric). Please coerce with
as.duration
.
私は1だけ年や月の近似値が必要な場合365
または30
にdyears(1)
を変更することが可能である知っています、数年と数ヶ月の閏年を考慮するよりスマートな方法があるかどうか疑問に思っていました。より多くのコンテキストを提供するために、
、私はggplot
でscale_x_date
をカスタマイズすることができますので、日付ベクトルを生成したいと思います。 waiver()
に2000年、2003年、2006年、2009年を表示させる代わりに、可能であれば、すべての個別年または3か月ごとの期間を設定したいと考えています。
'配列を' – GGamba
' seq.Date'を使ってください。それは少し魔法です。あなたは 'by = '2 weeks''を渡すことができ、それを理解するでしょう。 – alistaire
ありがとうございます@GGamba、私は 'seq()'の 'by ='で 'weeks'と 'years'を指定できることを知らなかった –