【问题标题】:Select spark dataframe column with special character in it using selectExpr使用 selectExpr 选择带有特殊字符的 spark 数据框列
【发布时间】:2023-03-08 04:14:01
【问题描述】:
我的列名是Município,字母í 带有重音。
我的selectExpr 命令因此而失败。有没有办法解决它?基本上我有类似下面的表达式:
.selectExpr("...CAST (Município as string) as Município...")
我真正想要的是能够保留与它来的相同名称的列,所以将来我不会在不同的表/文件上遇到这种问题。
如何让 spark 数据框接受重音符号或其他特殊字符?
【问题讨论】:
标签:
pyspark
apache-spark-sql
special-characters
azure-databricks
【解决方案1】:
您可以使用反引号将列名括起来。例如,如果您有以下架构:
df.printSchema()
#root
# |-- Município: long (nullable = true)
用反引号包裹的特殊字符表示列名:
df2 = df.selectExpr("CAST (`Município` as string) as `Município`")
df2.printSchema()
#root
# |-- Município: string (nullable = true)