2017-07-16 336 views
-1

例如,我想加上la和lon列,并将结果输出到另一列。如何在Spark Dataframe中的列之间进行一些计算?

+------+------------------+------------------+ 
|userid|    la |    lon| 
+------+------------------+------------------+ 
| u3|    2.0|    2.0| 
| u4|    1.0|    1.0| 
| u5|    2.0|    2.0| 
| u1|1.6666666666666667|2.6666666666666665| 
| u6|    1.0|    3.5| 
| u2|    3.0|    4.0| 
+------+------------------+------------------+ 
+0

你能给你想,你尝试过什么迄今为止计算的一个具体的例子吗? –

回答

1

如果你只是需要总结两列在一起,这是非常简单的:

df.withColumn("x", $"la" + $"lon") 

x是新列的名称。

要提升到列2的幂:

df.withColumn("x", pow($"la" + $"lon", 2)) 
+0

当我做df.withColumn(“x”,pow($“la”+ $“lon”))时,为什么会出错?错误:(407,30)无法找到参数impl的隐式值:breeze.numerics.pow.Impl [org.apache.spark.sql.Column,VR] result.withColumn(“x”,pow($“la1 “ - $”la2“))。show() ^ –

+0

你在靠什么力量提升? – eliasah

+0

我只想输出($“la”+ $“lon”)^ 2,怎么做? –

相关问题