【发布时间】:2018-01-11 12:44:03
【问题描述】:
我有一个 Spark 数据框,其列 characters 为 20/01/2000(日/月/年)。
但我正在尝试将其更改为日期格式,因此我可以在这里使用函数: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() 不起作用,我不得不使用另一个工具。
有什么线索吗?
【问题讨论】:
标签: r date apache-spark sparklyr