【发布时间】:2016-02-06 20:46:58
【问题描述】:
我正在参加在线课程。我目前的任务要求我计算其中一个字段的平均值。 当我使用单个关系时,我得到了这个工作,但当前的任务涉及从通过连接其他两个关系创建的关系中计算一个值。 当我尝试基于以前成功的方法的功能时,我收到了这个让我感到困惑的错误消息。
无效的场投影。架构中不存在投影字段 [join2::Y_rate2::wtd_stars]:
我在 PIG shell 中输入的代码是:
avg = FOREACH groupedJoin2 GENERATE AVG(join2::Y_rate2::wtd_stars);
当我进入时
grunt> describe groupedJoin2
这是我的输出:
groupedJoin2: {group: chararray,join2: {(Y_rate2::business_id: chararray,Y_rate2::stars: int,Y_rate2::useful_clipped: int,Y_rate2::wtd_stars: double,Y_m2::business_idgroup: chararray,Y_m2 ::num_ratings: long,Y_m2::avg_stars: double,Y_m2::avg_useful: double,Y_m2::avg_wtdstars: double)}}
我相信我的问题是我不知道如何引用我想要计算平均值的字段,但是几天的搜索时间并没有启发我。
如果这是我的问题,谁能指出如何引用该字段?如果这不是我的问题,我会很感激你指出我正确的方向。
【问题讨论】:
标签: join apache-pig projection