2016-06-29 4 views
-2

私は、次のデータフレームを持っている:ベースRを使用して年番号と週番号を抽出するには?

id created_at     year_weak 
1  2016-01-01T12:11:03.383Z 2016-01 
2  2016-01-04T12:11:03.383Z 2016-01 
3  2016-01-06T12:11:03.383Z 2016-01 
4  2016-01-11T12:11:03.383Z 2016-02 
5  2016-01-12T12:11:03.383Z 2016-02 

は、現在、私はlubridateパッケージを使用してコードを次ています

paste(year(as.Date(df$created_at)),week(as.Date(df$created_at)),sep = "-") 

私は基本でそれを行うことができますどのように、ベースRを使用して同じことをしたいですR?ベースと

+1

すでに文字列か 'Date'または' POSIXct' "のcreated_at" のデータ型ですか? –

+0

実際、それはタイプを変更していない要因です。 – sanaz

答えて

3

これ以下の作品Rコマンド:

year <- format(as.Date(df$created_at)+2, "%Y") 
week <- format(as.Date(df$created_at)+2, "%U") 

paste(year,week,sep = "-") 

注:2016年1月1日は金曜日だったし、これはformat()であなたに0の週を与えるので、あなたは、2日間を追加する必要があります週は日曜日から始まります。

よろしく、
J_F

+0

おかげさまで、異なる開始日に異なる年にそれを適用したいのですが – sanaz

+0

はこのコードは何年もうまく機能しますか? – sanaz

+1

マニュアルを読む: "%U 日曜日を第1曜日の1として(通常は第1週の第1日として年の最初の日曜日に)使用して、10進数(00-53)の週。米国大会。 –