当我还需要使用 withColumnRenamed 时,如何 select 来自 Spark 数据框的列?
How do I select columns from a Spark dataframe when I also need to use withColumnRenamed?
我有一个
的数据框
df = df.select("employee_id", "employee_name", "employee_address")
我需要重命名前两个字段,而且 select 第三个字段。所以我认为这会起作用,但这似乎只有 select employee_address
。
df = (df.withColumnRenamed("employee_id", "empId")
.withColumnRenamed("employee_name", "empName")
.select("employee_address")
)
如何正确重命名前两个字段,同时 select 第三个字段?
我尝试了 withColumn
的混合用法,但这不起作用。我必须在所有三个字段上使用 select 吗?
您可以使用alias
命令:
import pyspark.sql.functions as func
df = df.select(
func.col("employee_id").alias("empId"),
func.col("employee_name").alias("empName"),
func.col("employee_address")
)
我有一个
的数据框df = df.select("employee_id", "employee_name", "employee_address")
我需要重命名前两个字段,而且 select 第三个字段。所以我认为这会起作用,但这似乎只有 select employee_address
。
df = (df.withColumnRenamed("employee_id", "empId")
.withColumnRenamed("employee_name", "empName")
.select("employee_address")
)
如何正确重命名前两个字段,同时 select 第三个字段?
我尝试了 withColumn
的混合用法,但这不起作用。我必须在所有三个字段上使用 select 吗?
您可以使用alias
命令:
import pyspark.sql.functions as func
df = df.select(
func.col("employee_id").alias("empId"),
func.col("employee_name").alias("empName"),
func.col("employee_address")
)