私はこのようなデータフレームを持っています:
x <- data.frame("date" = c("2018-09-12","2018-09-11", "2018-06-23","2018-06-12","2018-06-10","2019-09-12","2019-09-23"), value1 = c(22,45,23,12,11,2,23))
> x
date value1
1 2018-09-12 22
2 2018-09-11 45
3 2018-06-23 23
4 2018-06-12 12
5 2018-06-10 11
6 2019-09-12 2
7 2019-09-23 23
次のように、日付列で並べ替えてから、特定の月の最後の月の値のみを取得する必要があります。
month value1
2018-09-12 22
2018-06-23 23
2019-09-23 23
グループ化列とスライスとして年月に変換できます
library(zoo)
library(dplyr)
x %>%
mutate(date = as.Date(date)) %>%
arrange(date) %>%
group_by(yearmon = as.yearmon(date)) %>%
slice(n()) %>%
ungroup %>%
select(-yearmon)
# A tibble: 3 x 2
# date value1
# <date> <dbl>
#1 2018-06-23 23
#2 2018-09-12 22
#3 2019-09-23 23
またはで「yearmon」列を作成しますformat
からbase R
library(dplyr)
x %>%
mutate(date = as.Date(date)) %>%
arrange(date) %>%
group_by(yearmon = format(date, '%Y-%m')) %>%
slice(n()) %>%
ungroup %>%
select(-yearmon)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加