Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
Pig >> mail # user >> Pivot table with zeros instead of empty


Copy link to this message
-
Pivot table with zeros instead of empty
Hello!

I have a script that gives me following result:

time_grouped = GROUP joined BY (ip, hour);
counts = FOREACH time_grouped GENERATE group.ip as ip, group.hour as hour,
COUNT(joined) as count;

(128.187.97.22, 0, 180)
(128.187.97.22, 1, 84)
(128.187.97.22, 2, 25)
(128.187.97.22, 22, 31)
(128.187.97.22, 23, 2)

That is IP address, hour of day, counter.
I'd like to get following:

(128.187.97.22, (m1,m2, m3, ..., m23))
m1-m23 corresponds to the counter. And if there is nothing for particular
hour, then I'd like to have 0 instead empty value.

The trick here is that if I do not have anything for particular hour, then
I won't have count for it.
Is there a way to achieve the goal?

Thanks in advance
--
Evgeny Morozov
Developer Grid Dynamics
Skype: morozov.evgeny
www.griddynamics.com
[EMAIL PROTECTED]
+
Prashant Kommireddi 2013-03-07, 08:04
+
Eugene Morozov 2013-03-08, 08:55
+
Eugene Morozov 2013-03-08, 19:21