5

日付の形式をから形式に変換しようとしyyyy-mm-ddていdd-mm-yyyyます。例えば:

D <- "06.12.2012"  
D <- as.Date(D, "%d.%m.%Y")
D
# [1] "2012-12-06"

「06-12-2012」に変換するにはどうすればよいですか?

4

2 に答える 2

19

a) パース

   d <- as.Date( "06.12.2012", "%d.%m.%Y")

b) フォーマット

   strftime(d, "%m-%d-%Y")

また

   format(d, "%m-%d-%Y")
于 2013-01-03T22:30:58.437 に答える
9

厳密に言えば、できません。ADateは、印刷すると文字列のように見える整数 (1970-01-01 からの日数) です。オブジェクトの出力形式Dateは YYYY-MM-DD です。これは、ISO-8601 標準であるためです。

チャットで@GSeeが言及したように、print.Dateのような方法でメソッドを再定義する必要があります。

print.Date <- function(x, max=NULL, ...) {
  if (is.null(max)) 
    max <- getOption("max.print", 9999L)
  if (max < length(x)) {
    print(format(x[seq_len(max)], "%d-%m-%Y"), max = max, ...)
    cat(" [ reached getOption(\"max.print\") -- omitted", 
      length(x) - max, "entries ]\n")
  }
  else print(format(x, "%d-%m-%Y"), max = max, ...)
  invisible(x)
}
于 2013-01-03T22:38:58.093 に答える