这是我的代码
Sys.setenv('SPARKR_SUBMIT_ARGS' =
'"--packages" "com.databricks:spark-csv_2.10:1.3.0" "sparkr-shell"')
library(SparkR)
sc=sparkR.init(master="local",
sparkHome = "/Users/devesh/Downloads/spark-1.4.1-bin-hadoop2.6",
sparkPackages = c("com.databricks:spark-csv_2.10:1.3.0"))
sqlContext <- sparkRSQL.init(sc)
df <- createDataFrame(sqlContext, iris)
avg(df$Sepal_Length)
并给我输出:
Column avg(Sepal_Length)
但不是一个数字。我正在使用Mac OS
答案 0 :(得分:3)
这是一种预期的行为。与Sparkr
avg`中的其他运算符一样被延迟评估。要获得该值,您需要触发操作。此外,它只是在列表达式,没有适当的上下文,不会单独工作:
library(magrittr)
select(df, avg(df$Sepal_Length)) %>% collect()