Select 使用 selectExpr 在其中包含特殊字符的 spark 数据框列

Select spark dataframe column with special character in it using selectExpr

我的列名称是 Município,字母 í 上有重音符号。

我的 selectExpr 命令因此失败。有办法解决吗?基本上我有类似下面的表达式:

.selectExpr("...CAST (Município as string) as Município...")

我真正想要的是能够保留与它来时相同的名称的列,这样以后我就不会在不同的 tables/files.[=15 上出现这种问题了=]

如何让 spark 数据框接受重音符号或其他特殊字符?

您可以将列名称用反引号括起来。例如,如果您有以下架构:

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)