首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >猪的扁平化、去甲基化

猪的扁平化、去甲基化
EN

Stack Overflow用户
提问于 2014-04-21 22:11:37
回答 1查看 314关注 0票数 0

我想从以下模式创建一个扁平的联接表

代码语言:javascript
复制
   titles = FOREACH programs GENERATE (px.pig.udf.PARSE_KEYWORDS(program_xml))
    AS program:
        (root_id: long, 
        ids:bag {(idtype:chararray, idvalue:chararray)}, 
        keywords:bag {(keytype:chararray,keyvalue:chararray)});

如果输入是

代码语言:javascript
复制
(1, {('x','foo'),('y','bar')},{})
(2, {('x','fiz'),('y','buzz')},{})
(2, {('x','moo')},{})
...

输出应该类似于:

代码语言:javascript
复制
root_id    idvalue
1          foo
1          bar
2          fiz
2          buzz
3          moo

我怎么才能在猪身上做到呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-23 06:18:59

  1. 项目前两列。 X= foreach标题生成root_id,ids;
  2. 在第二列上压平。 Y= foreach x生成root_id,平坦(Id) as (idtype:chararray,idvalue:chararray);

这将以以下格式给出结果: root_id idtype idvalue

1 x foo

1y吧

2 x菲兹

2y嗡嗡

3×moo

项目第一列和第三列,以获得所需的结果。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23206904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档