Как устранить ошибку исключения из анализа в Pyspark - PullRequest
0 голосов
/ 15 марта 2019

Я получил ошибку в Pyspark:

AnalysisException: u'Resolved attribute(s) week#5230 missing from
longitude#4976,address#4982,minute#4986,azimuth#4977,province#4979,
action_type#4972,user_id#4969,week#2548,month#4989,postcode#4983,location#4981 
in operator !Aggregate [user_id#4969, week#5230], [user_id#4969, 
week#5230, count(distinct day#4987) AS days_per_week#3605L]. 
Attribute(s) with the same name appear in the operation: week. 
Please check if the right attribute(s) are used

Это похоже на фрагмент кода, в котором используется функция agg:

df_rs = df_n.groupBy('user_id', 'week')
            .agg(countDistinct('day').alias('days_per_week'))
            .where('days_per_week >= 1')
            .groupBy('user_id')
            .agg(count('week').alias('weeks_per_user'))
            .where('weeks_per_user >= 5').cache()

Однако я не вижу здесь проблемы. И я ранее использовал эту строку кода на тех же данных, много раз.

РЕДАКТИРОВАТЬ : Я просматривал код, и, похоже, тип ошибки связан с такого рода соединениями:

df = df1.join(df2, 'user_id', 'inner')
df3 = df4.join(df1, 'user_id', 'left_anti).

но проблема еще не решена.

EDIT2 : К сожалению, предложенный вопрос не похож на мой, поскольку речь идет не о двусмысленности имени столбца, а об отсутствующем атрибуте, который, по-видимому, отсутствует при проверке фактических кадров данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...