作为一个来自R的用户,我习惯于在列上轻松执行操作。是否有一种简单的方法可以将我在Scala中编写的此函数转换为R代码?
def round_tenths_place( un_rounded:Double ) : Double = {
val rounded = BigDecimal(un_rounded).setScale(1, BigDecimal.RoundingMode.HALF_UP).toDouble
return rounded
}
将其应用于数据框的一列 - 类似于我希望它所做的:
bid_results.withColumn("bid_price_bucket", round_tenths_place(bid_results("bid_price")) )
我还没有找到任何简单的方法,正在努力想出如何解决这个问题。一定有比将数据框架转换为RDD,然后从行的RDD中选择正确字段并映射函数至所有值更简单的方法,对吧?同时,创建SQL表并使用SparkSQL UDF来完成这个操作也应该更加简洁,是吗?