gpt4 book ai didi

python - 如何在 PySpark 中将大量列从长类型转换为整数类型?

转载 作者:行者123 更新时间:2023-12-02 18:17:32 40 4
gpt4 key购买 nike

我有一个包含大约 50 多列的数据框,全部采用“长”格式。我想批量处理其中的 40 个以转换为“整数”格式。

我必须继续重复下面吗?


df = df \
.withColumn('colA', col('colA').cast(IntegerType())) \
.withColumn('colB', col('colB').cast(IntegerType())) \
.withColumn('colC', col('colC').cast(IntegerType())) \
....

上面对我来说看起来很手动。我是 PySpark 的新手,所以不确定是否可以将所有列放入列表中,并且只使用 cast 一次(就像我在 Python 中所做的那样)。

非常感谢您的帮助!

最佳答案

使用如下所示的内容(如果您想一次转换所有列)-

from pyspark.sql.functions import col

df.select(*(col(c).cast("integer").alias(c) for c in df.columns))

关于python - 如何在 PySpark 中将大量列从长类型转换为整数类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71387355/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com