无法从 Pyspark DataFrame 中选择超过 255 列

问题描述 投票:0回答:2

我正在尝试从 Pyspark DatFrame 中选择 500 列。收到错误“SyntaxError:超过 255 个参数”

Df2 = Df\
  .select("col1","col2","col3",...............,"col500")

也尝试了以下方法,但没有成功。

cols = ["col1","col2","col3",...............,"col500"]
Df2 = Df\
     .select(cols)

这两种方法都适用于少于 255 列。

注意:我的Python版本是3.6

请给我建议。谢谢。

python-3.x pyspark apache-spark-sql
2个回答
3
投票

与@pissall交谈后,以下是选择超过255列的两个可行的解决方案:

案例1:

cols = ["col1","col2","col3",...............,"col500"]
df2 = df.select(cols)

案例2:

df.createOrReplaceTempView("df"); 
spark.sql("SELECT col1, col2, ..., col500 FROM df")

0
投票

在同一选择中添加 [ ] 有效。

df = df.select([df[col1],df[col2]....])
© www.soinside.com 2019 - 2024. All rights reserved.