Предположим, у меня есть таблица с двумя столбцами CUSTTYPE и AMOUNT. Я хочу добавить третий столбец NTILE, который затем можно сгруппировать и использовать для получения средних значений, как показано ниже:
CUSTTYPE | AMOUNT | NTILE
----------+---------+----------
RETAIL | 78.00 | 1
RETAIL | 234.00 | 1
RETAIL | 249.00 | 1
RETAIL | 278.00 | 2
RETAIL | 392.00 | 2
RETAIL | 498.00 | 2
RETAIL | 500.00 | 3
RETAIL | 738.00 | 3
RETAIL | 1250.00 | 3
RETAIL | 2029.00 | 4
RETAIL | 2393.00 | 4
RETAIL | 3933.00 | 4
По сути, я пытаюсь взять среднее значение каждых n членов (здесь n = 3):
CUSTTYPE | AMOUNT | NTILE
----------+---------+----------
RETAIL | 187.00 | 1
RETAIL | 389.33 | 2
RETAIL | 829.33 | 3
RETAIL | 2785.0 | 4
Из ссылки на Pig здесь кажется, что это можно сделать с помощью Over()
, но я не смог найти пример того, как это можно сделать. Мысли?