如何在R中使用最新时间戳的行过滤数据表

时间:2019-12-19 11:22:20

标签: sql r filter timestamp

我有一个48行的数据表,是通过SQL查询从数据库中提取的。

我要过滤此数据集中的最新时间戳。

有人知道怎么做吗?

非常感谢!

为了清楚起见,附上

表: enter image description here

3 个答案:

答案 0 :(得分:0)

在大多数数据库中,您将执行以下操作:

select t.*
from <your logic here>
order by timestamp desc
fetch first 1 row only;

并非所有数据库都支持fetch first。在您的数据库中,它可能拼写为limitselect top

答案 1 :(得分:0)

在R中,假设您的数据存储在名为df和的数据框中:

tail(df[order(df$TIMESTAMP), ])[1,]

答案 2 :(得分:0)

谢谢你们的建议!

我已经找到了使用dplyr的答案:

filter(my_table,timestamp_col == max(timestamp_col)

例如,对于内置的mtcars数据集,要查找所有齿轮数最大的汽车,请使用 过滤器(mtcars,gear == max(gear))

在基数R中,相同的东西是mtcars [mtcars $ gear == max(mtcars $ gear),]