【发布时间】:2016-12-26 09:20:09
【问题描述】:
我有一个非常大的数据框,我需要按最后一个值对其进行子集化。我知道data.table 库包含last() 函数,它返回数组的最后一个值,但我需要将foo 子集化为id 中的最后一个值track 中的每个单独值。 id 中的值是连续整数,但每个 track 的最后一个值都不同。
> head(foo)
track id coords.x coords.y
1 0 0 -79.90732 43.26133
2 0 1 -79.90733 43.26124
3 0 2 -79.90733 43.26124
4 0 3 -79.90733 43.26124
5 0 4 -79.90725 43.26121
6 0 5 -79.90725 43.26121
输出看起来像这样。
track id coords.x coords.y
1 0 57 -79.90756 43.26123
2 1 98 -79.90777 43.26231
3 2 61 -79.90716 43.26200
...等等
如何应用last() 函数(或像tail() 这样的另一个函数)来产生这个输出?
【问题讨论】: