我是新来的Pig,所以这可能是一个微不足道的问题。我无法得到一个合理的答案,因此问这个问题。
有3列,如下所示:
userid itemid action
245 4 'view'
245 6 'click'
149 12 'buy'
149 1 'click'
等等。。。
我有一个给定的Map,例如: 'view'=1 , 'click'=1.4 , 'buy'= 2.1
等。
我想要的输出是:
userid itemid action
245 4 1
245 6 1.4
149 12 2.1
149 1 1.4
简单的命令,可以帮助我实现这一点?我需要对第3列执行一些计算,因此不能使用字符串格式。
1条答案
按热度按时间omhiaaxx1#
使用这些Map值在hdfs中创建Map文件,如:
假设此文件存储在
<mapping_file>
. 然后加载此文件并将原始数据集与此文件连接:根据您的用例和文件大小,还有其他方法。但我认为这是最灵活的。