我有一个列数为characters
的Spark数据框,其格式为20/01/2000(日/月/年)。Sparklyr - 在火花中更改日期格式
但我试图将其更改为日期格式,所以我可以在这里使用函数:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions以仅获取我想要的数据(例如提取的月份和日期)。
但似乎只有当我使用其他格式的日期时,这些函数才起作用,如1970-01-30。
一个例子:
sc <- spark_connect(master = "spark://XXXX")
df <- data.frame(date = c("20/10/2010", "19/11/2010"))
df_tbl <- copy_to(sc, df, "df")
如果我只想要个月来提取新列:
df_tbl <- df_tbl %>% mutate(month = month(date))
我得到:
> df_tbl %>% glimpse()
Observations: 2
Variables: 2
$ data <chr> "20/10/2010", "19/11/2010"
$ month <int> NA, NA
由于R的功能as.Date()
没有按”工作,我不得不使用另一种工具。
任何线索?