我是猪的新手。我在数据集中有一些数据,如下所示。
(U,Y,,,,,,)
(U,U,U,U,W,,,)
(U,U,U,U,U,Y,,)
我需要将其转换为不包括空白字段的单个组行。
输出应如下所示
(U,10)
(Y,2)
(W,1)
我已尝试过以下代码。
B = foreach data generate FLATTEN(TOBAG(*)) as leads;
在上面的语句之后,所有列都转换为具有一个字段的行,我想过滤空行。所以我使用下面的内容。
C= FILTER B BY leads != '';
但它给出了以下错误
Pig ERROR 1075:从UDF收到一个bytearray。无法确定 如何将bytearray转换为字符串
我甚至尝试按照以下方式投射到chararray。
C= FILTER B BY (chararray)leads != '';
但它不起作用。