如何解决使用Python在同一spark数据框中的两行之间减去数据
我有两行的spark数据框。该数据框包含数字和字符串类型的值。我需要从row1减去row2的数值,同时保持字符串值和列名相同。这需要显示在同一数据框中的新行中。我在代码中使用Spark Python。请帮助我
解决方法
scala
val df = Seq((5,"10"),(4,"fail_string")).toDF("a","b")
val result = df.withColumn("result",$"b" - $"a")
result.show()
pyspark:
df = spark.createDataFrame([(5,(1,"fail")],"a int,b string")
result = df.withColumn("result",col("b") - col("a"))
result.show()
结果将是:
+---+-----------+------+
| a| b|result|
+---+-----------+------+
| 5| 10| 5.0|
| 4|fail_string| null|
+---+-----------+------+
如您所见,这是一个非常简单的spark用例,使用起来也很安全,不用担心如果字段损坏了就不会出现异常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。