格式化日期时显示格式错误,显示错误

问题描述 投票:0回答:2

我有一个简单的可以显示日期的可朗读的闪亮应用程序,但是日期显示不正确。

    library(rhandsontable)   
    library(magrittr)

    DF_na = data.frame(integer = c(NA, 2:10), 
                               logical = c(NA, rep(TRUE, 9)), 
                               character = c(NA, LETTERS[1:9]),
                               factor = c(NA, factor(letters[1:9])),
                               date = c(NA, seq(from = Sys.Date(), by = "days", 
                                                length.out = 9)),
                               stringsAsFactors = FALSE)

            DF_na$factor_ch = as.character(DF_na$factor)
            DF_na$date_ch = c(NA, as.character(seq(from = Sys.Date(), by = "days", 
                                                   length.out = 9)))

            rhandsontable(DF_na) %>%
 hot_col("date", dateFormat = "DD/MM/YYYY", type = "date")

格式显示错误。日期在我的应用中显示为MM-DD-YY,但我需要为DD-MM-YY

r shiny rhandsontable
2个回答
0
投票

格式化日期为R:

x <- format(seq(from = Sys.Date(), by = "days", length.out = 9), "%d/%m/%Y")

DF_na = data.frame(integer = c(NA, 2:10), 
                   logical = c(NA, rep(TRUE, 9)), 
                   character = c(NA, LETTERS[1:9]),
                   factor = c(NA, factor(letters[1:9])),
                   date = as.character(c(NA,x)),
                   stringsAsFactors = FALSE)

rhandsontable(DF_na) %>%
  hot_col("date", dateFormat = "DD/MM/YYYY", type = "date")

enter image description here


0
投票

根据此https://github.com/jrowen/rhandsontable/issues/145问题,您必须使用自定义日期格式,您必须执行以下操作:

  1. 将数据框日期列转换为字符
  2. 在hot_col规范中指定dateFormat
  3. 使用hot_to_r读取输入$表后从字符串转换回来
© www.soinside.com 2019 - 2024. All rights reserved.