我的目标是每年按照月份的顺序(从12月、11月、10月等到1月、2月、3月等)重新排序数据的行。
目前,我有以下数据
Date Title Article
1 1 December 2000 PRESS CONFERENCE Article1
2 1 November 2000 PRESS CONFERENCE Article2
3 1 October 2000 PRESS CONFERENCE Article3
4 1 September 2000 PRESS CONFERENCE Article1
5 1 August 2000 PRESS CONFERENCE Article2
6 1 July 2000 PRESS CONFERENCE Article3
7 1 June 2000 PRESS CONFERENCE Article1
8 1 May PRESS CONFERENCE Article2
9 1 April 2000 PRESS CONFERENCE Article3
10 1 March 2000 PRESS CONFERENCE Article1
11 1 February 2000 PRESS CONFERENCE Article2
12 1 January 2000 PRESS CONFERENCE Article3
13 1 December 2001 PRESS CONFERENCE Article1
14 1 November 2001 PRESS CONFERENCE Article2
15 1 October 2001 PRESS CONFERENCE Article3
.
.
.
n 1 January 2001 PRESS CONFERENCE Article这种结构从2000年一直延续到2019年。现在,我想扭转这种局面,从2000年到2019年,每年都有这样的情况:
Date Title Article
1 1 January 2000 PRESS CONFERENCE Article1
2 1 February 2000 PRESS CONFERENCE Article2
3 1 March 2000 PRESS CONFERENCE Article3
4 1 April 2000 PRESS CONFERENCE Article1
5 1 May 2000 PRESS CONFERENCE Article2
6 1 June 2000 PRESS CONFERENCE Article3
7 1 July 2000 PRESS CONFERENCE Article1
8 1 August 2000 PRESS CONFERENCE Article2
9 1 September 2000 PRESS CONFERENCE Article3
10 1 October 2000 PRESS CONFERENCE Article1
11 1 November 2000 PRESS CONFERENCE Article2
12 1 December 2000 PRESS CONFERENCE Article3
13 1 January 2001 PRESS CONFERENCE Article1
14 1 February 2001 PRESS CONFERENCE Article2
15 1 March 2001 PRESS CONFERENCE Article3
.
.
.
n 1 December 2001 PRESS CONFERENCE Article有人能帮我吗?我该怎么做呢?
非常感谢!
发布于 2019-10-06 18:24:52
将Date转换为正确的格式,然后从dplyr中使用arrange
library(dplyr)
df %>% arrange(lubridate::dmy(Date))
Date Title
1 1 October 2000 PRESS
2 1 November 2000 PRESS
3 1 December 2000 PRESS
4 1 October 2001 PRESS
5 1 November 2001 PRESS
6 1 December 2001 PRESS使用基R
df[order(as.Date(df$Date, "%d %B %Y")),]数据
#Providing small dataset using `dput` will make it easier for other to help
df <- structure(list(Date = c("1 December 2000", "1 November 2000",
"1 October 2000", "1 December 2001", "1 November 2001", "1 October 2001"
), Title = c("PRESS", "PRESS", "PRESS", "PRESS", "PRESS", "PRESS"
)), class = "data.frame", row.names = c("1", "2", "3", "13",
"14", "15"))发布于 2019-10-06 22:32:06
我们可以使用来自anydate的anytime
library(dplyr)
library(anytime)
df %>%
arrange(anydate(Date))https://stackoverflow.com/questions/58259952
复制相似问题