Re: [问题] 如何只留下时间最新的资料!?

楼主: celestialgod (天)   2015-11-12 21:27:26
※ 引述《tony255034 (5245566)》之铭言:
: 文章分类提示:
: - 问题: 当你想要问问题时,请使用这个类别
: [问题类型]:
: 程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
: [软件熟悉度]:
: 新手(没写过程式,R 是我的第一次)
: [问题叙述]:
: 想请问要如何将除了时间最新的资料留下来呢?
: 原始资料
: DATE NAME VALUE
: 2015/11/12 8:00 tony 32
: 2015/11/12 9:00 tony 34
: 2015/11/12 8:00 sam 32
: 2015/11/12 9:00 sam 34
: 过滤后资料
: DATE NAME VALUE
: 2015/11/12 9:00 tony 34
: 2015/11/12 9:00 sam 34
最近FB才有人问我类似的问题,不过他要留最旧的XD
library(dplyr)
dat = data.frame(DATE = strftime(c("2015/11/12 08:00", "2015/11/12 09:00",
"2015/11/12 08:00", "2015/11/12 09:00", "2015/11/12 10:00"),
format = "%y/%m/%d %H:%M"), NAME = c("tony", "tony", "tony","sam", "sam"),
VALUE = c(32, 34, 36, 37, 38))
dat %>% group_by(NAME) %>% mutate(dateOrder = rank(DATE)) %>%
filter(dateOrder == max(dateOrder)) %>% select(-dateOrder)
# Source: local data frame [2 x 3]
# Groups: NAME
#
# DATE NAME VALUE
# 1 15/11/12 09:00 tony 34
# 2 15/11/12 10:00 sam 38
作者: tony255034 (5245566)   2015-11-16 22:43:00
感谢ORZ

Links booklink

Contact Us: admin [ a t ] ucptt.com