PySpark:如何将数据帧与存储在其他变量中的列名连接起来
PySpark: How to join dataframes with column names stored in other variables
我正在尝试学习 PySpark。我必须在各自的列 colname_a
和 colname_b
的基础上加入两个数据框,比方说 A
和 B
。通常,我会这样做:
# create a new dataframe AB:
AB = A.join(B, A.colname_a == B.colname_b, how = 'left')
但是,我无法直接使用列名。它们被存储在一个特定的模块中,我必须这样称呼它们:
module.COLNAME_A # contains string with colname of A
module.COLNAME_B # contains string with colname of B
如何将这些字符串值放入上面的命令中,以便加入数据帧?
使用方括号而不是点符号来访问列名:
AB = A.join(B, A[module.COLNAME_A] == B[module.COLNAME_B], how = 'left')
我正在尝试学习 PySpark。我必须在各自的列 colname_a
和 colname_b
的基础上加入两个数据框,比方说 A
和 B
。通常,我会这样做:
# create a new dataframe AB:
AB = A.join(B, A.colname_a == B.colname_b, how = 'left')
但是,我无法直接使用列名。它们被存储在一个特定的模块中,我必须这样称呼它们:
module.COLNAME_A # contains string with colname of A
module.COLNAME_B # contains string with colname of B
如何将这些字符串值放入上面的命令中,以便加入数据帧?
使用方括号而不是点符号来访问列名:
AB = A.join(B, A[module.COLNAME_A] == B[module.COLNAME_B], how = 'left')