我的专栏有名字和姓氏,用空格分隔。我想使用 pig 函数拆分为 2 个不同的列。我想到了 STRSPLIT 函数,但我不知道如何使用它。谁能帮我解决这个简单的问题?
问问题
3587 次
1 回答
1
您可以尝试这样的事情,下面的示例代码
我正在做的是
1.将每一行作为单列
读取 2.使用空格作为分隔符应用 STRSPLIT 函数
3.将名字和姓氏存储到两个不同的列中
input.txt
Pearson Charles
James Michael
Smith Linda
PigScript:
A = LOAD 'input.txt' AS line;
B = FOREACH A GENERATE FLATTEN(STRSPLIT(line,'\\s+',2)) AS (firstname:chararray,lastname:chararray);
C = FOREACH B GENERATE firstname,lastname;
DUMP C;
Output:
(Pearson,Charles)
(James,Michael)
(Smith,Linda)
从此链接查看更多信息
http://pig.apache.org/docs/r0.13.0/func.html#strsplit
于 2014-10-21T06:56:09.637 回答