Spark比较两个数据帧

时间:2019-11-08 13:34:04

标签: apache-spark apache-spark-sql

  • 列表项

需要比较两个数据帧并创建第三个数据帧以产生差异。 在比较数据帧时,需要遵循一些条件。

DF1:(Struct type -> empid:IntegerType,name:StringType,phone:IntegerType)

empid|name|phone
   1| amar | 12345
   2|  23  |<blank>

DF2:我正在按其数据类型转换DF1。 (col(c).cast(datatype))

empid|name|phone
   1| amar | 12345
   2|  null  | null

由于名称是字符串类型,现在这里将其强制转换为null。另外,由于phone是整数,因此空格被强制转换为null。

我需要帮助来生成第三个数据框,它只应指出我的转换错误。如果我考虑所有的空值,那么我也不需要电话。请参见下面的预期DF3示例。

DF3:

empid|name|phone    |error
   1| amar | 12345  |null
   2|  23  |<blank> |name is wrong data type

0 个答案:

没有答案