-5

我想将列添加到 dataframe2(df2) 中不存在的 dataframe1(df1) 并从 df2 中获取值。例如

df1:

A |B |C |
---------
ad|bd|cd|
ss|tt|yy|


df2: (only 1 row)
A|B|C|D|E|F|G|
--------------
a|b|c|d|e|f|g|

我要这个:

df3:
A|B|C|D |E|F|G|
--------------
ad|bd|cd|d|e|f|g|
ss|tt|yy|d|e|f|g|

我怎么能快速做?

谢谢

4

1 回答 1

2

假设df2恰好有 1 行,您可以crossJoin像下面这样使用:

>>> df1.show()
+---+---+---+
|  A|  B|  C|
+---+---+---+
| ad| bd| cd|
| ss| tt| yy|
+---+---+---+

>>> df2.show()
+---+---+---+---+---+---+---+
|  A|  B|  C|  D|  E|  F|  G|
+---+---+---+---+---+---+---+
|  a|  b|  c|  d|  e|  f|  g|
+---+---+---+---+---+---+---+

>>> df3 = df1.crossJoin(df2.drop(*df1.columns))
>>> df3.show()
+---+---+---+---+---+---+---+
|  A|  B|  C|  D|  E|  F|  G|
+---+---+---+---+---+---+---+
| ad| bd| cd|  d|  e|  f|  g|
| ss| tt| yy|  d|  e|  f|  g|
+---+---+---+---+---+---+---+
于 2018-10-22T09:00:01.400 回答