python - 根据条件将列添加到 pyspark 数据框

标签 python apache-spark dataframe pyspark apache-spark-sql

我的 data.csv 文件包含三列,如下所示。我已将此文件转换为 python Spark 数据帧。

  A   B    C
| 1 | -3 | 4 |
| 2 | 0  | 5 |
| 6 | 6  | 6 |

我想在 Spark 数据框中添加另一个列 D,其值为"is"或“否”,条件是如果 B 列中的相应值大于 0,则为"is",否则为“否”。

  A   B    C   D
| 1 | -3 | 4 | No  |
| 2 | 0  | 5 | No  |
| 6 | 6  | 6 | Yes |

我无法通过 PySpark 数据帧操作来实现这一点。

最佳答案

尝试这样的事情:

from pyspark.sql import functions as f
df.withColumn('D', f.when(f.col('B') > 0, "Yes").otherwise("No")).show()

关于python - 根据条件将列添加到 pyspark 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54839033/

相关文章:

python - random.seed(seed) 是否在多个进程中生成相同的序列?

apache-spark - Spark UDF 对数组进行操作

hadoop - sparkSession/sparkContext 获取不到hadoop配置

python-3.x - 用 NAN 逐行替换 pandas 数据帧中的最后 2 个数值

r - 使用 mutate() 将列添加到数据框中,作为任意一组其他列的函数

python - 从 Django 模板访问 Model.objects 方法

python - 将字符串列转换为整数

Python多重继承和MRO

python - Pyspark - 如何将 '4 hours' 多个窗口分组聚合

python - 具有许多离散特征的机器学习数据集