如何在Pig中的csv文件中读取下一行

时间:2015-01-21 11:08:39

标签: csv apache-pig

我想写一个猪脚本来计算两点之间的距离。 数据输入是

x,y
0.0,0.0
18.6,-11.1
36.1,-21.9
53.7,-32.6
70.1,-42.8
86.5,-52.6
101.7,-62.3

距离公式:sqrt((x2-x1)^2 + (y2-y1)^2)

但是我无法读取Pig中的下一行来计算距离!

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

如果你能以某种方式为点对生成一个公共标识符,你可以按其分组,然后计算距离。

ID, x, y
A, 0.0, 0.0
A, 18.6, -11.1
B, 36.1, -21.9
B, 53.7, -32.6
...

分组依据会返回A, {(0.0, 0.0), (18.6, -11.1)}之类的内容。现在你可以编写一个UDF来调用由计算距离的两个点组成的元组。