Я получил ошибку в 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 : К сожалению, предложенный вопрос не похож на мой, поскольку речь идет не о двусмысленности имени столбца, а об отсутствующем атрибуте, который, по-видимому, отсутствует при проверке фактических кадров данных.