R / Shiny - 如何通过Sys.Date获得当年()?

时间:2015-05-27 03:28:05

标签: r shiny

如何通过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>

有什么想法吗?

2 个答案:

答案 0 :(得分:18)

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

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

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

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

答案 1 :(得分:2)

你能不能这样做:

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

使用lubridateSys.Date()获取年份?