从PySpark中的两个不同数据框中减去列的值,以查找RMSE

时间:2018-02-27 13:52:40

标签: python apache-spark dataframe pyspark rdd

我无法理解。我正在尝试计算测试和预测数据之间的RMSE。

测试

col1    col2
 a        2 
 b        3

预测

col1   col2
 a       4 
 b       5

我正在尝试进行此测试(col2)-prediction(col2)。那是

2-4 =-2
3-5 =-2

我试过

test.select("col2").subtract(prediction.select("col2"))

但我没有得到所需的结果。我试图获得此结果以找到RMSE。在spark中有内置函数来查找RMSE吗?

谢谢。

2 个答案:

答案 0 :(得分:0)

它是一个连接和算术减法:

test.join(prediction, on="col1").withColumn("sub", test.col2-prediction.col2)

答案 1 :(得分:0)

请在以下表达式中替换表名:

tab1.join(tab2).withColumn("Sub", tab2("T1")-tab1("T")).select("Sub").show()