hadoop - 在Pig Latin中查找文件中的逗号数

标签 hadoop apache-pig

文件的行数为“N”,每行具有3个以逗号分隔的属性。
例如:输入FileX的字段为name,number,amt
内容

abc,123,123
bcd,345,234
cde,349,900

输出:
6

即如何找到逗号的数量?

最佳答案

加载文件,以便将整个记录存储在1字段中。然后将行标记为字母。仅过滤逗号,分组和计数逗号。

A = load '/home/user/fileX';
B = foreach A generate flatten(TOKENIZE(REPLACE($0,'','|'), '|')) as letter;
C = filter B BY (letter == ',');
D = group C by letter;
E = foreach D generate COUNT(C), group;--Note:if you want only the count then remove the group and generate COUNT(C)
DUMP E;

输出量

Output

关于hadoop - 在Pig Latin中查找文件中的逗号数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43581400/

相关文章:

json - 将复杂的Json数据导入hive

hadoop - Tika文本提取在HDFS上不起作用

python - Apache Pig-在相同关系上嵌套的FOREACH

hadoop - 在 PIG 中连接带有时间戳的文件

hadoop - 自定义Hadoop Mapper

json - 加入 Apache Pig

hadoop - PIG无法理解hbase表数据

hadoop - 如何调试 pig 脚本

hadoop - 基于分组的 pig 脚本

hadoop - 在 AWS EMR 上用 Lipstick 运行 Pig