我是 Pig 的新手,我正在尝试编写一个字数统计程序。
从文本中获取单词的一种方法是使用以下TOKENIZE函数:
WORDS = foreach INPUT generate flatten(TOKENIZE(text)) AS word;
但我只想拆分空格,而TOKENIZE拆分逗号之类的东西。我该怎么做?我尝试使用STRSPLIT(text, ' '),但STRSPLIT似乎返回一个元组而TOKENIZE返回一个包,所以我不确定如何使用STRSPLIT它。
我是 Pig 的新手,我正在尝试编写一个字数统计程序。
从文本中获取单词的一种方法是使用以下TOKENIZE函数:
WORDS = foreach INPUT generate flatten(TOKENIZE(text)) AS word;
但我只想拆分空格,而TOKENIZE拆分逗号之类的东西。我该怎么做?我尝试使用STRSPLIT(text, ' '),但STRSPLIT似乎返回一个元组而TOKENIZE返回一个包,所以我不确定如何使用STRSPLIT它。
这取决于您的输入数据是什么样的,但以下内容可能对您有用:
此外,可以使用ToBag(也在 PiggyBank 中)将元组转换为包。
我们实际上不能直接将一个元组转换成一个包(反之亦然)。我建议你这样做: