我有一张我从下面看的表。
A = load 'customer' using PigStorage('|');
在客户跟踪中有一些
7|Ron|ron@abc.com
8|Rina
9|Don|dmes@xyz.com
9|Don|dmes@xyz.com
10|Maya|maya@cnn.com
11|marry|mary@abc.com
当我使用下列。。。。
B = DISTINCT A;
A_CLEAN = FILTER B by ($0 is not null) AND ($1 is not null) AND ($2 is not null);
它也会移除8 | rina
如何通过pig删除空行?
有没有办法通过not isnull()来尝试a_clean=filter b???
我是新来的Pig,所以不知道我应该把里面是空的。。。
谢谢
a_clean=过滤器b by not isempty(b);
2条答案
按热度按时间7rfyedvj1#
请尝试以下操作:
这将产生输出:
(8,瑞娜)
(7,ron,ron@.com)
(9,don,dmes@xyz.com)
(10,maya,maya@cnn.com)
(11,marry,mary@.com)
在pig中,不能测试元组的空值。
6ss1mwsb2#
更新:
我不知道为什么isempty()不为你工作,它为我工作。isempty将只与bag一起工作,因此我将所有字段转换为bag并测试空性。参见下面的工作代码。
对于你的另一个问题,这是一个简单的数学计算