我有两列,即(每列的条目数相同)
df1 =
+-------+
| col1 |
+-------+
| 10 |
+-------+
| 3 |
+-------+
...
df2 =
+-------+
| col2 |
+-------+
| 6 |
+-------+
| 1 |
+-------+
...
我希望合并它们,使最终的 DataFrame 具有以下形状:
df3 =
+-------+-------+
| col1 | col2 |
+-------+-------+
| 10 | 6 |
+-------+-------+
| 3 | 1 |
+-------+-------+
...
但我无法使用 join
方法这样做,因为我没有尝试根据列标题合并列。如果有人对如何轻松实现这一点有任何提示,那将非常有帮助!
最佳答案
如果您能够将列作为列表获取,一种方法是使用 python zip
方法。例如:
list1 = [1,2,3]
list2 = ['foo','baz','bar']
data_tuples = list(zip(list1,list2))
df = spark.createDataFrame(data_tuples)
df.show()
+---+---+
| _1| _2|
+---+---+
| 1|foo|
| 2|baz|
| 3|bar|
+---+---+
但是我不确定它在大数据集上的表现如何。
关于dataframe - 通过 [PySpark] 列连接两个 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46577476/