繁体   English   中英

基于R中数据帧的不同列进行分组和下一个排序

[英]Group and next sort based on different columns of data frame in R

具有以下数据框:

test <- data.frame(Brand = rep(c("A","B","C"),5), SaleDate =c("12.12.2013","29.6.2004","1.9.2011","16.6.2004","22.9.2011","25.12.2011","20.10.2011","13.1.2012","3.2.2012","29.8.2013","8.10.2013","3.8.2013","15.6.2004","24.7.2013","16.6.2004"))

我需要首先根据“品牌”列对数据进行分组,然后根据“ SaleDate”列对分组进行排序。 我需要将“ SaleDate”列转换为Date以便根据日期进行排序并获取以下信息:

Brand   SaleDate
A   15.6.2004
A   16.6.2004
A   20.10.2011
A   29.8.2013
A   12.12.2013
B   29.6.2004
B   22.9.2011
B   13.1.2012
B   24.7.2013
B   8.10.2013
C   16.6.2004
C   1.9.2011
C   25.12.2011
C   3.2.2012
C   3.8.2013

这个问题可能已经有了答案,但我找不到。 任何链接也将不胜感激。

首先将SaleDate列转换为SaleDate日期:

library('lubridate')
test$SaleDate <- dmy(test$SaleDate)

然后按BrandSaleDate降序排列

library('dplyr')
newtest <- arrange(test, Brand, SaleDate)

newtest将如下所示(日期为YYYY-MM-DD)

> newtest
   Brand   SaleDate
1      A 2004-06-15
2      A 2004-06-16
3      A 2011-10-20
4      A 2013-08-29
5      A 2013-12-12
6      B 2004-06-29
7      B 2011-09-22
8      B 2012-01-13
9      B 2013-07-24
10     B 2013-10-08
11     C 2004-06-16
12     C 2011-09-01
13     C 2011-12-25
14     C 2012-02-03
15     C 2013-08-03

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM