Ошибка преобразования в дату: строка символов не в стандартном однозначном формате - PullRequest
0 голосов
/ 25 мая 2018

Я хочу рассчитать количество месяцев между двумя датами, но до этого у меня возникла проблема при загрузке данных в r.В листе csv формат mm/dd/yyyy, но в R переменная классифицируется как символ.

Я пытался

data$issue_d <- format(as.Date(data$issue_d), "%m/%d/%Y")

и сначала преобразовать в дату, но выдает следующую ошибку

символьная строка не имеет стандартного однозначного формата

Любое предложение для этого?

Пример ввода:

issue_d <- c("Dec,2011","Nov,2014","Apr,2015") 

1 Ответ

0 голосов
/ 25 мая 2018

Попробуйте ниже:

# example data
df1 <- data.frame(
  issue_d1 = c("Dec,2011","Nov,2014","Apr,2015"),
  issue_d2 = c("Nov,2015","Sep,2017","Apr,2018"))


library(zoo)

df1$Months <- 
  (as.yearmon(df1$issue_d2, "%b,%Y") - 
     as.yearmon(df1$issue_d1, "%b,%Y")) * 12

df1
#   issue_d1 issue_d2 Months
# 1 Dec,2011 Nov,2015     47
# 2 Nov,2014 Sep,2017     34
# 3 Apr,2015 Apr,2018     36
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...