abs,cosine
函数。
R和sparkR中的abs函数有什么区别。 abs函数何时在spark中执行?
sparkR abs函数的文档 http://spark.apache.org/docs/latest/api/R/abs.html
答案 0 :(得分:4)
不同之处在于功能的存在。
在基数R中,abs
是一个基元:
function(x) .Primitive("abs")
在Spark中,abs
是对Spark引擎调用的包装器:
setMethod("abs",
signature(x = "Column"),
function(x) {
jc <- callJStatic("org.apache.spark.sql.functions", "abs", x@jc)
column(jc)
})
您可以看到SparkR包{R-3}}的R源代码。
答案 1 :(得分:0)
在基础R中,它可以应用于任何向量,但在SparkR中,它只能应用于columns.Suppose你有一个数据框,C3列是double,你可以使用下面的代码将一列C4添加到数据框,这是C3的绝对值。
df$C4 <- abs(df$C3)
或
withColumn(df,"absvalue",abs(df&C3))
我认为基础R和SparkR之间的最大区别在于SparkR中,你可以进行的最小单位是列,而不是矢量或矩阵。我只是SparkR的新手,我还在学习。