gpt4 book ai didi

hadoop - Pig Latin - 从不同的袋子中增加值(value)?

转载 作者:可可西里 更新时间:2023-11-01 16:15:39 25 4
gpt4 key购买 nike

我有一个文件 max_rank.txt 包含:

1,a
2,b
3,c

和第二个文件 max_rank_add.txt:

d
e
f

我的预期结果是:

1,a
2,b
3,c,
4,d,
5,e
6,f

所以我想为第二组值生成 RANK,但从大于第一组最大值的值开始。

脚本的开头可能是这样的:

existing = LOAD 'max_rank.txt' using PigStorage(',') AS (id: int, text : chararray);
new = LOAD 'max_rank_add.txt' using PigStorage() AS (text2 : chararray);
ordered = ORDER existing by id desc;
limited = LIMIT ordered 1;
new_rank = RANK new;

但我对最后一行、最重要的一行有疑问,它将 limited 的值从 new_rank 添加到 rank_new

你能给点建议吗?

问候帕维尔

最佳答案

我找到了解决方案。两个脚本都有效:

rank_plus_max = foreach new_rank generate flatten(limited.$0 + rank_new), text2;
rank_plus_max = foreach new_rank generate limited.$0 + rank_new, text2;

这些不起作用:

rank_plus_max = foreach new_rank generate flatten(limited.$0) + flatten(rank_new);

2014-02-24 10:52:39,580 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <line 10, column 62> mismatched input '+' expecting SEMI_COLON
Details at logfile: /export/home/pig/pko/pig_1393234166538.log

关于hadoop - Pig Latin - 从不同的袋子中增加值(value)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21983695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com