R 在数据框中对当天的最后一个条目进行子集设置

R 在数据框中对当天的最后一个条目进行子集设置,r,dataframe,R,Dataframe,有人知道在数据帧中对每天最后一个条目进行子集的方法吗? i、 e.获得: > dataframe time value date 1 2 28 2013-07-08 15:13:35 2 4 8 2013-07-08 15:14:06 3 7 2 2013-07-08 15:43:05 4 8 25 2013-07

有人知道在数据帧中对每天最后一个条目进行子集的方法吗? i、 e.获得:

> dataframe

    time        value                date
1      2           28 2013-07-08 15:13:35
2      4            8 2013-07-08 15:14:06
3      7            2 2013-07-08 15:43:05
4      8           25 2013-07-09 16:30:41
5     11           12 2013-07-09 19:04:40
6     14           41 2013-07-09 19:20:14
7     18           12 2013-07-10 00:39:04
8     22           12 2013-07-10 08:27:02

非常感谢

我喜欢使用
data.table
执行此操作。让我们假设您的
数据.frame
被称为
df
,然后

    time        value                date
3      7            2 2013-07-08 15:43:05
6     14           41 2013-07-09 19:20:14
8     22           12 2013-07-10 08:27:02
#加载所需的包
要求(数据表)

dt我喜欢用
data.table
来做这件事。让我们假设您的
数据.frame
被称为
df
,然后

    time        value                date
3      7            2 2013-07-08 15:43:05
6     14           41 2013-07-09 19:20:14
8     22           12 2013-07-10 08:27:02
#加载所需的包
要求(数据表)

dt我喜欢用
data.table
来做这件事。让我们假设您的
数据.frame
被称为
df
,然后

    time        value                date
3      7            2 2013-07-08 15:43:05
6     14           41 2013-07-09 19:20:14
8     22           12 2013-07-10 08:27:02
#加载所需的包
要求(数据表)

dt我喜欢用
data.table
来做这件事。让我们假设您的
数据.frame
被称为
df
,然后

    time        value                date
3      7            2 2013-07-08 15:43:05
6     14           41 2013-07-09 19:20:14
8     22           12 2013-07-10 08:27:02
#加载所需的包
要求(数据表)

dt这是一种使用
by
tail
的基本R方法

#  Load required package
require( data.table )
dt <- data.table( df )

#  Make dates out of your date-time column
dt[ , date1 := as.Date( date ) ]

#  Subset to last row in each group
dt[ , .SD[.N] , by = date1 ]
#        date1 time value                date
#1: 2013-07-08    7     2 2013-07-08 15:43:05
#2: 2013-07-09   14    41 2013-07-09 19:20:14
#3: 2013-07-10   22    12 2013-07-10 08:27:02

df这是一种使用
by
tail
的基本R方式

#  Load required package
require( data.table )
dt <- data.table( df )

#  Make dates out of your date-time column
dt[ , date1 := as.Date( date ) ]

#  Subset to last row in each group
dt[ , .SD[.N] , by = date1 ]
#        date1 time value                date
#1: 2013-07-08    7     2 2013-07-08 15:43:05
#2: 2013-07-09   14    41 2013-07-09 19:20:14
#3: 2013-07-10   22    12 2013-07-10 08:27:02

df这是一种使用
by
tail
的基本R方式

#  Load required package
require( data.table )
dt <- data.table( df )

#  Make dates out of your date-time column
dt[ , date1 := as.Date( date ) ]

#  Subset to last row in each group
dt[ , .SD[.N] , by = date1 ]
#        date1 time value                date
#1: 2013-07-08    7     2 2013-07-08 15:43:05
#2: 2013-07-09   14    41 2013-07-09 19:20:14
#3: 2013-07-10   22    12 2013-07-10 08:27:02

df这是一种使用
by
tail
的基本R方式

#  Load required package
require( data.table )
dt <- data.table( df )

#  Make dates out of your date-time column
dt[ , date1 := as.Date( date ) ]

#  Subset to last row in each group
dt[ , .SD[.N] , by = date1 ]
#        date1 time value                date
#1: 2013-07-08    7     2 2013-07-08 15:43:05
#2: 2013-07-09   14    41 2013-07-09 19:20:14
#3: 2013-07-10   22    12 2013-07-10 08:27:02

df请使用
dput(数据帧)
使您的示例易于复制。虽然我已经回答了,但实际上是重复的!请使用
dput(dataframe)
使您的示例易于复制。虽然我已经回答了,但实际上是重复的!请使用
dput(dataframe)
使您的示例易于复制。虽然我已经回答了,但实际上是重复的!请使用
dput(dataframe)
使您的示例易于复制。虽然我已经回答了,但实际上是重复的!