Ich habe einen Datenrahmen, der wie folgt aussieht:R: Füllen mit früheren Werten fehlenden Wertes
d <- data.frame(county = c("Abilene", rep(NA, 5), "Cook", rep(NA, 4), "Blah", NA, "Allegheny", rep(NA, 3)))
county
1 Abilene
2 <NA>
3 <NA>
4 <NA>
5 <NA>
6 <NA>
7 Cook
8 <NA>
9 <NA>
10 <NA>
11 <NA>
12 Blah
13 <NA>
14 Allegheny
15 <NA>
16 <NA>
17 <NA>
Ich möchte in den <NA>
mit dem Wert der vorherigen nicht fehlenden Kreisnamen füllen. Mit anderen Worten, ich möchte mit diesem am Ende:
county
1 Abilene
2 Abilene
3 Abilene
4 Abilene
5 Abilene
6 Abilene
7 Cook
8 Cook
9 Cook
10 Cook
11 Cook
12 Blah
13 Blah
14 Allegheny
15 Allegheny
16 Allegheny
17 Allegheny
Bisher habe ich jeden Wert in d$county
Schleifen über wurde, eine temporäre Variable mit dem Namen eines jeden nicht leeren Kreis Wert aktualisiert wird, und das Nachfüllen jeder Zelle. Dies ist sehr langsam mit einem großen Datenrahmen. Ich würde das lieber in dplyr
machen, bin aber offen für jede andere Lösung.
Ebenfalls relevant verwenden - http://stackoverflow.com/questions/2776135/last-observation-carried-forward -in-a-Datenframe – thelatemail