Converta uma coluna de caractere para data com vários formatos

Aqui estão meus dados de exemplo iniciais do Excel (da próxima vez, vou ensinar meu cliente sobre dados organizados):

date_string  
3/13, 3/17, 3/20  
4/13  
5/12, 5/20  

Chego bem perto do que quero com isso:

 library(tidyverse)  
 library(stringr)  
    data <- str_split_fixed(data$date_string, ",", 3)%>%  
    as_tibble() %>%  
    gather() %>%
    filter(value != "")  

então eu fico com isso:

key    value
v1    3/13  
v1    43203  
v1    5/12  
v2    3/17
v2    5/20
v3    3/20

Isso é bom o suficiente para que eu possa fazer o resto da formatação e organização no Excel, mas quanto mais eu puder fazer no R, melhor, especialmente porque precisarei fazer isso novamente na próxima vez em que atualizar o produto final. Eu sinto que há umlubridate função para me ajudar com isso, masmdy edate continue retornando erros.

O valor que eu quero é a tabela acima, mas no formato m / d / a.

Atualizar

Com base na resposta abaixo, adicionei o seguinte. Isso funciona, mas provavelmente existe uma maneira mais elegante de fazer isso:

   data <- str_split_fixed(data$date_string, ",", 3)%>%  
    as_tibble() %>%  
    gather() %>%
    filter(value != "") %>%  
    mutate(value =  
     if_else(
      str_detect(value, "/") == T,
      paste0(value, "/2018"),
      as.character(as_date(as.numeric(value), origin = "1900-01-01")))) %>%        
    mutate(value =
     if_else(
      str_detect(value, "/") == T,
      mdy(value),
      ymd(value)))

Recebo esses avisos, mas os dados são como quero:

1. In as_date(as.numeric(value), origin = "1900-01-01") :  
 NAs introduced by coercion
2. 1 failed to parse.
3. 5 failed to parse.

Não tenho certeza de como "falhou ao analisar" quando a coluna final "value" é retornada como uma variável de data. . .

questionAnswers(2)

yourAnswerToTheQuestion