【问题标题】:pyspark access column of dataframe with a dot '.'带有点“。”的数据框的 pyspark 访问列
【发布时间】:2016-05-16 10:23:57
【问题描述】:

除非首先由withColumnRenamed 重命名,否则包含点(例如“id.orig_h”)的 pyspark 数据帧将不允许使用 groupby。有解决方法吗? "`a.b`" 似乎没有解决它。

【问题讨论】:

  • 你能分享你用来分组的代码吗?

标签: apache-spark dataframe pyspark


【解决方案1】:

在我的 pyspark shell 中,以下 sn-ps 正在工作:

from pyspark.sql.functions import *
myCol = col("`id.orig_h`")    
result = df.groupBy(myCol).agg(...)

myCol = df["`id.orig_h`"]   
result = df.groupBy(myCol).agg(...)

希望对你有帮助。

【讨论】:

  • 感谢@Daniel de Paula 的回答。你能确认使用groupby("`id.orig_h`") 不起作用吗?
  • @HananShteingart,对我来说,以下代码有效:df.groupBy("`id.orig_h`").agg(...)
  • 对我来说不是。您能否添加更多以 id 开头的列。 ?我使用 pyspark 1.6
  • @HananShteingart 您的 DataFrame 是如何创建的?您如何进行 groupBy 操作?你能显示df.printSchema()的结果吗?
猜你喜欢
  • 2017-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多