在DataRicks中使用SparkyR查找日期列的最大值

在DataRicks中使用SparkyR查找日期列的最大值,r,databricks,sparklyr,R,Databricks,Sparklyr,我只是尝试使用在DataRicks中使用SparkyR导入的数据来查找日期列的最大值: data%>%dplyr::选择(日期变量)%>%max() 这将返回一个错误: Error in max(.) : invalid 'type' (list) of argument Error in max(.) : invalid 'type' (list) of argument 如果我只做max(data$date\u变量),它会给出-inf。当然max()和min()必须是最常用的函数之一?我做

我只是尝试使用在DataRicks中使用SparkyR导入的数据来查找日期列的最大值:

data%>%dplyr::选择(日期变量)%>%max()

这将返回一个错误:

Error in max(.) : invalid 'type' (list) of argument Error in max(.) : invalid 'type' (list) of argument
如果我只做
max(data$date\u变量)
,它会给出
-inf
。当然
max()
min()
必须是最常用的函数之一?我做错了什么

library(sparklyr)

sc <- spark_connect(method = "databricks")

data <- sdf_sql(sc, "SELECT DATE('2020-01-01') AS date_variable UNION SELECT DATE('2020-01-02') AS date_variable")
获取最大值有两种主要方法

如果使用
pull
,结果是一个
Date
向量,可与
max
一起使用

data %>% dplyr::select(date_variable) %>% class()
#> [1] "tbl_spark" "tbl_sql"   "tbl_lazy"  "tbl"
data %>% dplyr::pull(date_variable) %>% max()
#> [1] "2020-01-02"
这种方法的缺点是计算不是在Spark中完成的。要在Spark中进行计算,请使用
summary

data %>% dplyr::summarise(max_date = max(date_variable))
#> # Source: spark<?> [?? x 1]
#>   max_date  
#>   <date>    
#> 1 2020-01-02
data%>%dplyr::摘要(max\u date=max(date\u变量))
#>#来源:火花[?x 1]
#>最长日期
#>       
#> 1 2020-01-02
获取最大值有两种主要方法

如果使用
pull
,结果是一个
Date
向量,可与
max
一起使用

data %>% dplyr::select(date_variable) %>% class()
#> [1] "tbl_spark" "tbl_sql"   "tbl_lazy"  "tbl"
data %>% dplyr::pull(date_variable) %>% max()
#> [1] "2020-01-02"
这种方法的缺点是计算不是在Spark中完成的。要在Spark中进行计算,请使用
summary

data %>% dplyr::summarise(max_date = max(date_variable))
#> # Source: spark<?> [?? x 1]
#>   max_date  
#>   <date>    
#> 1 2020-01-02
data%>%dplyr::摘要(max\u date=max(date\u变量))
#>#来源:火花[?x 1]
#>最长日期
#>       
#> 1 2020-01-02

您好,谢谢您的回答。我确实使用summary函数获得了所需的值,但即使这样也会花费太长的时间—2分钟。有更好的方法吗?也是拉样收吗?我对Sparkyr很陌生,在RStudio工作并不陌生。嗨,谢谢你的回答。我确实使用summary函数获得了所需的值,但即使这样也会花费太长的时间—2分钟。有更好的方法吗?也是拉样收吗?我对Sparkyr很陌生,在RStudio工作并不陌生。