2016-05-16 4 views
1

Платформа данных pyspark, содержащая точку (например, «id.orig_h»), не позволит groupby uppon, если только не переименована в первую очередь withColumnRenamed. Есть ли обходной путь? "`a.b`" похоже не решает проблему.столбец доступа к pyspark кадра данных с точкой.

+0

Можете ли вы поделиться кодом, которым вы пользуетесь, чтобы сгруппировать? –

ответ

4

В моей pyspark оболочке, следующие фрагменты работают:

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(...) 

Я надеюсь, что это помогает.

+0

Спасибо @ Daniel de Paula за ваш ответ. Можете ли вы подтвердить, что использование '' groupby ("' id.orig_h' ")' 'не работает? –

+0

@HananShteingart, для меня работает следующий код: 'df.groupBy (" \ 'id.orig_h \' "). Agg (...)' –

+0

Для меня это не так. Не могли бы вы добавить дополнительные столбцы, начиная с id. ? Я использую pyspark 1.6 –