0
我想寫一個豬腳本來計算兩點之間的距離。 數據輸入如何讀取豬的csv文件中的下一行
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)
,但我不能在豬讀取下一行來計算距離!
任何人都可以幫我嗎?
我想寫一個豬腳本來計算兩點之間的距離。 數據輸入如何讀取豬的csv文件中的下一行
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)
,但我不能在豬讀取下一行來計算距離!
任何人都可以幫我嗎?
如果你能以某種方式爲點對生成一個公共標識符,你可以按照它進行分組,然後計算距離。
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來調用由計算距離的兩點組成的元組。
每組之間的距離如何?在你的例子中,我如何計算A和B之間的距離? – 2015-01-22 02:58:54
對於這種情況下,你需要重複點。事情是map reduce正在處理關鍵值對,而在豬的情況下,一行(關係中的入口)就是這樣一對,所以與其他所有處理都是獨立處理的。所以如果你不把它分成一行(鍵值對),它不能一起處理。 – LiMuBei 2015-01-22 09:18:24
非常感謝您的回覆。 – 2015-01-22 09:32:05