22

日付を当月の開始日に設定したいDate01)。今私は以下を使用します:

currentDate <- Sys.Date()  #for getting current system date eg:2012-11-06
formatDate <- format(currentDate, "%Y-%m")  #it return 2012-11
startDate <- as.Date(paste(formatDate, "-01", sep = ""))
# 2012-11-01 

これを行う簡単な方法はありますか?

4

5 に答える 5

35

はい、関数を使用するためのワンライナーがありますcut

cut(Sys.Date(), "month")
[1] 2012-11-01
Levels: 2012-11-01
于 2012-11-06T09:27:42.077 に答える
17

また、フォーマット関数を使用した1行:

format(Sys.Date(),"01-%m-%Y")
[1] "01-06-2017"
于 2017-06-19T09:34:39.730 に答える
13

lubridatefloor_dateはそれを日付に保ちます

library(lubridate)

floor_date(Sys.Date(), "month")
于 2018-05-08T15:18:41.190 に答える
2
as.Date(paste0(format(Sys.Date(), "%Y-%m"), "-01"))
于 2017-12-28T00:41:28.853 に答える
2

使用するlubridate(、、、、などでもsec機能し ます)minhourmonyear

library(lubridate)

dt <- Sys.Date()
day(dt) <- 01

dt
# [1] "2018-01-01"
于 2018-01-17T01:32:35.903 に答える