问题描述
我在pyspark数据框df1中有原始数据(从csv文件读取)。当我尝试附加另一个csv(将在另一个pyspark数据帧df2中读取)时,在我“结合”两个数据帧之前,是否有一种优雅的方法来检查或验证两者的模式?谢谢。
解决方法
您要寻找哪种验证?
-
匹配列名称
如果您只想知道是否存在相同的列,则可以使用
df1.select(df2.columns)
-
我认为,如果您尝试进行联合,则检查数据类型以及该列是否可为空可以使用是很重要的:
df1.schema==df2.schema
您可以将它们设置为断言,或者根据您的用例确定条件。