R/ Shiny - 如何使用 Sys.Date() 获取当前年份?

R/ Shiny - How to get current year with Sys.Date()?

如何使用 Sys.Date() 获取当前年份?

下面有这段代码,

      selectInput(
        inputId = "year",
        label = "Year:",
        choices = c(2014:Sys.Date())
        )

结果,

<select id="year"><option value="2014" selected>2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
....
<option value="16582">16582</option></select>

但我刚好需要,

<select id="year">
    <option value="2014" selected>2014</option>
    <option value="2015">2015</option>
</select>

有什么想法吗?

你就不能这样做吗:

choices = c(2014:lubridate::year(Sys.Date()))

使用 lubridateSys.Date()?

中获取年份

您可以在此处使用 format() 功能,如 Sys.Date() 的帮助页面中所述。请参阅 ?strptime 以了解所有不同的规格:

> c(2014, format(Sys.Date(), "%Y"))
[1] "2014" "2015"

如果您确实需要整数值,那么:

> c(2014L, as.integer(format(Sys.Date(), "%Y")))
[1] 2014 2015