Python 使用键的字典值的Pyspark连接条件
我正在编写一个脚本,它根据生产表测试一些新生成的表的内容。新生成的表可能具有相同的列名,也可能不具有相同的列名,并且可能具有必须在联接条件中使用的多个列。我正试图编写一个函数,使用字典传递所需的键。 大概是这样的:Python 使用键的字典值的Pyspark连接条件,python,dataframe,pyspark,Python,Dataframe,Pyspark,我正在编写一个脚本,它根据生产表测试一些新生成的表的内容。新生成的表可能具有相同的列名,也可能不具有相同的列名,并且可能具有必须在联接条件中使用的多个列。我正试图编写一个函数,使用字典传递所需的键。 大概是这样的: def check_subset_rel(self, remote_df, local_df, keys): join_conditions = [] for key in keys: join_conditions.append(local_df.k
def check_subset_rel(self, remote_df, local_df, keys):
join_conditions = []
for key in keys:
join_conditions.append(local_df.key['local_key']==remote_df.key['remote_key'])
missing_subset_df = local_df.join(remote_df, join_conditions, 'leftanti')
pyspark/python不喜欢在local\u-df.key['local\u-key']
和remote\u-df.key['remote\u-key']
中使用字典。我得到一个“'DataFrame'对象没有属性'key'”错误。我很确定它需要的是列的实际名称,而不是任何变量,但我不确定是否可以在值和列名之间进行对话
有人知道我该怎么做吗?试试
local\u-df[key['local\u-key']]==remote\u-df[key['remote\u-key']]
?哇!非常感谢。那就像冠军!非常非常感谢!我怎样才能相信你的回答?