У меня возникают проблемы с преобразованием столбца импортированных дат в фрейме данных, представленного в виде символов в другом формате даты, в объекты даты в том же фрейме данных. Вот пример игрушки:
xx <- data.frame(A = c(10, 15, 20), B = c("10/15/2010", "9/8/2015", "8/5/2013"))
Если я напечатаю xx,
A B
1 10 10/15/2010
2 15 9/8/2015
3 20 8/5/2013
Я применяю:
xx[, "B"] <- sapply(xx[, "B"], function(x) {as.Date(x,
format = "%m/%d/%Y", origin = "1970-01-01")})
и я получаю:
A B
1 10 14897
2 15 16686
3 20 15922
Если я посмотрю на режим столбца B, он будет числовым, а не датой. Что бы я ни пытался, я не могу получить результат, который преобразует столбец B в тип даты. Я всегда могу добавить:
xx[, "B"] <- as.Date(xx[, "B"])
но должен быть способ сделать это в одном выражении.
library(zoo); B <- read.zoo(xx, index = "B", format = "%m/%d/%Y")
Это преобразует ее во фрейм данныхfortify.zoo(B)
- person G. Grothendieck   schedule 16.11.2019