【问题标题】:Calculate approxQuantile for a column of dataframe with a dot '.'用点“。”计算一列数据框的 approxQuantile
【发布时间】:2019-06-12 15:34:00
【问题描述】:

我无法为列名中包含点的 pyspark 数据帧计算 approxQuantile。

例如数据框架构是

root
 |-- col.dot: double (nullable = true)

那我做不到

df.approxQuantile(('`col.dot`'), [0.5], 0.25)

导致错误: pyspark.sql.utils.IllegalArgumentException:'字段“col.dot”不存在。\n可用字段:col.dot'

我也试过了

df.approxQuantile(('col.dot'), [0.5], 0.25)

这给了我错误: pyspark.sql.utils.AnalysisException: '无法解析 \'col.dot\' 给定的输入列:col.dot'

【问题讨论】:

    标签: pyspark


    【解决方案1】:

    由于错误,Spark 无法解析带有点的列名(有关更多信息,请参阅此bug report)。只需使用下面的代码来清理您的列名:

    x = [s.replace('.', 'DOT') for s in df.columns]
    df = df.toDF(*x)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-16
      • 2022-11-14
      • 1970-01-01
      • 1970-01-01
      • 2015-01-28
      • 1970-01-01
      相关资源
      最近更新 更多