日付の形式をから形式に変換しようとし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」に変換するにはどうすればよいですか?
a) パース
d <- as.Date( "06.12.2012", "%d.%m.%Y")
b) フォーマット
strftime(d, "%m-%d-%Y")
また
format(d, "%m-%d-%Y")
厳密に言えば、できません。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)
}