2016-05-31 13 views
-2

で抽出します。lubridateパッケージを使用していることを知っていますが、それぞれの曜日を入力することができます。私は現在、多くの日付エントリを持つ大きなデータセットを扱っており、各日付エントリの平日を抽出したいと考えています。毎日の検索や平日の検索は全く不可能だと思います。私は私のデータフレームから私の日付の列を挿入することができ、フレームの各日付に対応する日を生成することができる機能を持っていることが大好きです。平日の日付をR

私のフレームは、私は任意のヘルプは非常に有益である

uinq_id Product_ID Date_of_order count      weekday 
1 Aarkios04_2014-09-09 Aarkios04 2014-09-09 10  Tues 
2 ABEE01_2014-08-18  ABEE01 2014-08-18  1  Mon 
3 ABEE01_2014-08-19  ABEE01 2014-08-19  0  Tues 
4 ABEE01_2014-08-20  ABEE01 2014-08-20  0  Wed 
5 ABEE01_2014-08-21  ABEE01 2014-08-21  0  Thurs 
6 ABEE01_2014-08-22  ABEE01 2014-08-22  0  Fri 

を生成しようとしています

uinq_id Product_ID Date_of_order count 
1 Aarkios04_2014-09-09 Aarkios04 2014-09-09 10 
2 ABEE01_2014-08-18  ABEE01 2014-08-18  1 
3 ABEE01_2014-08-19  ABEE01 2014-08-19  0 
4 ABEE01_2014-08-20  ABEE01 2014-08-20  0 
5 ABEE01_2014-08-21  ABEE01 2014-08-21  0 
6 ABEE01_2014-08-22  ABEE01 2014-08-22  0 

のようなものです。 ありがとうございます。このプラットフォームでは、現在のロケールにおける曜日の省略名 -

答えて

1

我々は?strptime

%によると、出力

df1$weekday <- format(as.Date(df1$Date_of_order), "%a") 
df1$weekday 
#[1] "Tue" "Mon" "Tue" "Wed" "Thu" "Fri" 

に取得するためにformatを使用することができます。 (また、入力に完全な名前と一致する:いくつかのロケールで名前のない 略語はありません。)

+0

それうまく働いた。私はRの中で新鮮です。 "%a"が何を意味するのか教えてください。 –

+1

@HindolGanguly '?strptime'による'%a - このプラットフォーム上の現在のロケールでの曜日の短縮名。 (入力のフルネームにも一致します:一部のロケールでは名前の省略形はありません) ' – akrun

+0

大丈夫です。私は同じパッケージを使用して週番号と月の名前も見つけることができますか? "%a"の代わりに何を使うべきですか? –

4

ベースRからweekdaysを使用して、あなたが一度にすべてのベクトルのためにこれを行うことができます。

temp = data.frame(timestamp = Sys.Date() + 1:20) 
> head(temp) 
    timestamp 
1 2016-06-01 
2 2016-06-02 
3 2016-06-03 
4 2016-06-04 
5 2016-06-05 
6 2016-06-06 
temp$weekday = weekdays(temp$timestamp) 
> head(temp) 
    timestamp weekday 
1 2016-06-01 Wednesday 
2 2016-06-02 Thursday 
3 2016-06-03 Friday 
4 2016-06-04 Saturday 
5 2016-06-05 Sunday 
6 2016-06-06 Monday