我想计算问题的平均时间..
A= LOAD '/user/priyanka/Book1.csv' AS (qid:chararray,at:datetime);
B= FOREACH A GENERATE qid AS question,(datetime)at AS time;
C= GROUP B BY question;
D= FOREACH C GENERATE group, (datetime) AVG(B.time);
在这里收到错误:
请使用显式演员。
qid的例子:56783978,at:23:45:30
如何解决?
答案 0 :(得分:0)
在你的最后一行,你在一袋日期时间记录上调用AVG。 AVG仅适用于数字类型。 https://pig.apache.org/docs/r0.11.0/api/org/apache/pig/builtin/AVG.html
您可能希望将时间转换为unix时期。您可以计算unix时间戳的平均值,因为它们是数字。 http://pig.apache.org/docs/r0.11.0/api/org/apache/pig/builtin/ToUnixTime.html