我的 Pig Latin 脚本中的错误
Bug in my Pig Latin script
我正在尝试对 Pig 中的文件执行中值运算。该文件看起来像这样。
NewYork,-1
NewYork,-5
NewYork,-2
NewYork,3
NewYork,4
NewYork,13
NewYork,11
Amsterdam,12
Amsterdam,11
Amsterdam,2
Amsterdam,1
Amsterdam,-1
Amsterdam,-4
Mumbai,1
Mumbai,4
Mumbai,5
Mumbai,-2
Mumbai,9
Mumbai,-4
文件加载完毕,其中的数据分组如下:
wdata = load 'weatherdata' using PigStorage(',') as (city:chararray, temp:int);
wdata_g = group wdata by city;
我正在尝试从以下城市的所有温度中获取中位数:
wdata_tempmedian = foreach wdata_g { tu = wdata.temp as temp; ord = order tu by temp generate group, Median(ord); }
数据是有序的,因为需要按排序顺序找到中位数。
但是我收到以下错误消息,我无法弄清楚是什么错误:
[main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <line 3, column 53> mismatched input 'as' expecting SEMI_COLON
非常感谢任何帮助。
您缺少一个“;”订购温度后。
wdata_tempmedian = FOREACH wdata_g {
tu = wdata.temp as temp;
ord = ORDER tu BY temp;
GENERATE group, Median(ord);
}
或
wdata_ordered = ORDER wdata_g BY temp;
wdata_tempmedian = FOREACH wdata_ordered GENERATE group, Median(ord);
注意:我假设您使用的是 data-fu,因为 PIG 没有中位数 function.Ensure jar 已正确注册
register /path/datafu-pig-incubating-1.3.1.jar
我正在尝试对 Pig 中的文件执行中值运算。该文件看起来像这样。
NewYork,-1
NewYork,-5
NewYork,-2
NewYork,3
NewYork,4
NewYork,13
NewYork,11
Amsterdam,12
Amsterdam,11
Amsterdam,2
Amsterdam,1
Amsterdam,-1
Amsterdam,-4
Mumbai,1
Mumbai,4
Mumbai,5
Mumbai,-2
Mumbai,9
Mumbai,-4
文件加载完毕,其中的数据分组如下:
wdata = load 'weatherdata' using PigStorage(',') as (city:chararray, temp:int);
wdata_g = group wdata by city;
我正在尝试从以下城市的所有温度中获取中位数:
wdata_tempmedian = foreach wdata_g { tu = wdata.temp as temp; ord = order tu by temp generate group, Median(ord); }
数据是有序的,因为需要按排序顺序找到中位数。 但是我收到以下错误消息,我无法弄清楚是什么错误:
[main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <line 3, column 53> mismatched input 'as' expecting SEMI_COLON
非常感谢任何帮助。
您缺少一个“;”订购温度后。
wdata_tempmedian = FOREACH wdata_g {
tu = wdata.temp as temp;
ord = ORDER tu BY temp;
GENERATE group, Median(ord);
}
或
wdata_ordered = ORDER wdata_g BY temp;
wdata_tempmedian = FOREACH wdata_ordered GENERATE group, Median(ord);
注意:我假设您使用的是 data-fu,因为 PIG 没有中位数 function.Ensure jar 已正确注册
register /path/datafu-pig-incubating-1.3.1.jar