基于另一个没有toPandas()的数据框列的pyspark数据框过滤器

时间:2019-06-24 16:30:58

标签: apache-spark dataframe pyspark

我的目标是根据每个列条目是否在另一个数据框列中,将值为0或1的“搅动”列添加到我的pyspark数据框中。

我的数据集太大,因此我无法创建toPandas(),但我认为这不是最佳选择。

我试图在下面的代码中使用isin(),但是它返回一个全为0的列,就像它没有赋值一样

from pyspark.sql.functions import lit
df_1 = df_1.withColumn("churn", lit(0))

valueWhenTrue = 1
df_1 = df_1.withColumn("churn", when((df_1.id.isin(df_2.id) == True), valueWhenTrue).otherwise(col("churn")))

df_1['churn'][df_1['id'].isin(df2['id'].unique())] = 0

预期的结果将与通过在上面的熊猫代码中获得的结果一样

0 个答案:

没有答案