Replace NA´s in Daten mit einem anderen Datum

Daten

DB1 <- data.frame(orderItemID  = 1:10,     
orderDate = c("2013-01-21","2013-03-31","2013-04-12","2013-06-01","2014-01-01", "2014-02-19","2014-02-27","2014-10-02","2014-10-31","2014-11-21"),  
deliveryDate = c("2013-01-23", "2013-03-01", "NA", "2013-06-04", "2014-01-03", "NA", "2014-02-28", "2014-10-04", "2014-11-01", "2014-11-23"))

Erwartetes Ergebnis

   DB1 <- data.frame(orderItemID  = 1:10,     
 orderDate= c("2013-01-21","2013-03-31","2013-04-12","2013-06-01","2014-01-01", "2014-02-19","2014-02-27","2014-10-02","2014-10-31","2014-11-21"),  
deliveryDate = c("2013-01-23", "2013-03-01", "2013-04-14", "2013-06-04", "2014-01-03", "2014-02-21", "2014-02-28", "2014-10-04", "2014-11-01", "2014-11-23"))

Meine Frage ähnelt einer anderen, die ich gepostet habe: Seid also nicht verwirrt. Wie Sie oben sehen können, habe ich einige fehlende Werte in den Lieferterminen und ich möchte sie durch ein anderes Datum ersetzen. Dieses Datum sollte das Bestelldatum des jeweiligen Artikels + die durchschnittliche Lieferzeit in (vollen) Tagen sein. (2 Tage) Die durchschnittliche Lieferzeit ist die Zeit, die aus dem Durchschnittswert aller Proben berechnet wird, die keine fehlenden Werte enthalten = (2 Tage +) 1 Tag + 3 Tage + 2 Tage + 1 Tag + 2 Tage + 1 Tag + 2 Tage): 8 = 1,75

So möchte ich die NA in der Lieferzeit durch das Bestelldatum + 2Tage ersetzen. Wenn keine NA vorhanden ist, sollte das Datum gleich bleiben.

Ich habe das schon versucht (mitlubridate), aber es funktioniert nicht:

DB1$deliveryDate[is.na(DB1$deliveryDate) ] <- DB1$orderDate + days(2)

Kann mir jemand helfen?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage