2017-03-10 3 views
0

SparkRを使用して大きなデータフレームを読んでいます。私は月に印刷しようとする場合、しかし、文字列を日付に変換するSparkR

head(select(df, df$booking_date)) 
    booking_date 
1 29-JUL-16 
2 29-JUL-16 
3 06-JUL-16 
4 21-JUL-16 
5 28-JUL-16 
6 28-JUL-16 

:私は、文字形式で日付を含む列の月を使用して集計する

head(select(df, month(df$booking_date))) 
    month(booking_date) 
1     NA 
2     NA 
3     NA 
4     NA 
5     NA 
6     NA 

それは正しい値を返しません。形式を理解していないようだが、次のコマンドを実行すると、月の非常に不幸()メソッドになり:

したがって
head(select(df, month(as.Date(df$booking_date, format = "%d/%b/%y"))) 

、私は(GROUP_BYするためにbooking_date列から月を取得することができる方法)データ?

ありがとうございます!

カルロス

答えて

0

てみ次のコードは、月の名前を取得する

a <- as.list(collect(select(df, df$booking_date))) 
b <- SparkR:::lapply(a$booking_date, function(x){months(as.Date(x, format = "%d-%b-%y"))}) 
print(b) 
関連する問題