在 PySpark 的两个不同 pyspark.sql.dataframes 中的两列中创建一个 pyspark.sql.dataframe

Posted

技术标签:

【中文标题】在 PySpark 的两个不同 pyspark.sql.dataframes 中的两列中创建一个 pyspark.sql.dataframe【英文标题】:Creating a pyspark.sql.dataframe out of two columns in two different pyspark.sql.dataframes in PySpark 【发布时间】:2016-11-16 06:45:03 【问题描述】:

假设 pyspark 中的以下两个 Dataframe 具有相同的行数: df1: |_ 列1a |_ 列 1b

df2: |_ 列2a |_ 列 2b

我希望创建一个只有 Column1a 和 Column 2a 的新 DataFrame “df”。什么是最好的解决方案?

【问题讨论】:

How do I add a new column to a Spark DataFrame (using PySpark)?的可能重复 解决方案着眼于转换数据框中的现有列或创建新列,而我想选择 Column1a 和 Column1b 来形成一个新的数据框。 join的上下文是基于位置的吗?例如,在这个答案中使用rownumber() 方法是否有效? ***.com/a/40626348/1100699 我需要试一试,也许可以。我周末试试。谢谢您的帮助。我会回来谈谈它的进展情况。 【参考方案1】:

Denny Lee 的答案是正确的。 它涉及在两个 DataFrame 上创建另一列,即每一行的 Unique_Row_ID。然后我们在 Unique_Row_ID 上执行连接。然后根据需要删除 Unique_Row_ID

【讨论】:

以上是关于在 PySpark 的两个不同 pyspark.sql.dataframes 中的两列中创建一个 pyspark.sql.dataframe的主要内容,如果未能解决你的问题,请参考以下文章

运行pyspark时出错

在 PySpark 的两个不同 pyspark.sql.dataframes 中的两列中创建一个 pyspark.sql.dataframe

Pyspark 和 BigQuery 在 Google Dataproc 中使用两个不同的项目 ID

如何使用 Spark 上下文?

合并两个蜂巢表(不同的列大小)- pyspark

加入 pyspark 不同的列