Pentaho从不同的CSV将2列彼此分开 [英] pentaho divide 2 columns each other from different csv

查看:28
本文介绍了Pentaho从不同的CSV将2列彼此分开的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Pentaho中,我有两个CSV文件,我需要彼此划分列并将结果写入新表。

1.csv

A B
1 10 14
2 8 20

2.csv

A B
1 2 7
2 4 10
输出应为 Output.csv

A B
1 5 2
2 2 12

每个CSV上至少有500行和500列。如何划分每个CSV并创建包含结果的新表?

推荐答案

创建转换并添加以下步骤:

  • 阅读csv1
  • 阅读csv2

在每次读取CSV之后,添加一个选择值步骤来重命名列No、A和B,这样就不会混淆列来自哪个文件(您可以跳过此步骤,合并两个文件时只会对列进行重命名,但您无法控制它,或者只使用一个选择值步骤并保留其中一个文件中的列名不变,我喜欢添加此步骤,以便在后续步骤中调试信息时更加清晰)

选择值步骤之后,添加排序行步骤,按每个数据流的列排序。

对行进行排序步骤之后,添加唯一的步骤合并联接,合并两个文件的数据,其中每个文件的列具有相同的值。

完成此步骤后,您的数据将如下所示:

第1号 A1 B1 第2号 A2 B2
1 10 14 1 5 2
2 8 20 2 4 10

因此您只需添加一个计算器步骤即可执行两个操作:

  • A3=A1/A2
  • B3=B1/B2

最后添加文本文件输出步骤以创建包含三列的output.csv:No1(或No2,两列具有相同的内容)、A3和B3。

这篇关于Pentaho从不同的CSV将2列彼此分开的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆