我有一个数据框,第一列格式为yyyy-mm-dd hh:mm:ss并归类为POSIXct。 dput()
数据帧的一小部分:
structure(list(`TIMESTAMP-TS` = structure(c(1432054800, 1432058400, 1432062000, 1432065600), class = c("POSIXct", "POSIXt"), tzone = ""),
`RECORD-RN` = 4099:4102, `BattV_Min-Volts` = c(12.34, 12.36,
12.35, 12.35), `ETos-DegC` = c(0.097, 0.047, 0.042, 0.023
), `Rso-DegC` = c(3.436, 3.52, 3.385, 3.053)), .Names = c("TIMESTAMP-TS", "RECORD-RN", "BattV_Min-Volts", "ETos-DegC", "Rso-DegC"), row.names = c(NA, 4L), class = "data.frame")
我想使用此列中的范围来选择其他列中的数据。 dateRangeInput
无法使用小时数,我想我会尝试inputSelect
。这尤其有效,因为我有多个具有不同时间步长的数据集,即5分钟间隔,1分钟间隔。
这些是我在Shiny ui.R文件中编写的用于选择日期和时间的代码行:
selectInput('starttime','Beginning date and time:', choices = data$'TIMESTAMP-TS', selectize = FALSE, size = 4),
selectInput('finishtime','Ending date and time:', choices = data$'TIMESTAMP-TS', selectize = FALSE, size = 4)
当Shiny运行时,下拉列表显示日期和时间为自1970年以来的总秒数。我认为用data$'TIMESTAMP-TS'
包裹as.POSIXct()
会将其更改为人类可读的形式,但它没有。
我尝试将数据作为默认类读入,然后在ui.R文件中为Shiny添加as.POSIXct()
,但它仍显示为累积秒数。这个实验的一个有趣的副作用是在情节上获得了一种地毯,为小时增加了更多的标签,这很有用,因为我制作的第一个地块没有时间,只有日期。
我应该使用什么来使下拉选项更容易理解?我看到了这个question and answer,但似乎使用selectInput
会更容易,因为它使用增量中的时间步长,因为它们出现在数据集中。