比较两个数据框以在pyspark中创建一个新的

时间:2018-07-29 18:22:04

标签: pyspark pyspark-sql

我是PySpark的新手,因此是个问题。

我有两个数据帧df1df2,其列为A, B and C。 在这两个数据帧中,只有Col C可以具有不同的值。 如何比较df1df2并创建带有列A, B C的df3,该列仅包含C和{{ 1}}

任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

内部联接和过滤器

String data = "[[[\"waves\",\"olas\",null,null,1]],null,\"es\",null,null,null,0.54545456,null,[[\"es\"],null,[0.54545456],[\"es\"]]]\n";
    JSONArray jsonArray = new JSONArray(data);
    JSONArray jsonArray1 = jsonArray.getJSONArray(0);
    JSONArray jsonArray2 = jsonArray1.getJSONArray(0);
    System.out.println(jsonArray2.getString(0));
    System.out.println(jsonArray2.getString(1));

如果您还想处理缺失值

from pyspark.sql.functions import col

df1.alias("df1").join(df2.alias("df2"), ["a", "b"]).where(col("df1.c") != col("df2.c"))
相关问题