I have a dataset that is grouped by category variables in the source data. For example:
Bar | Foo1 | Foo2 | Foo3 Bar2 | Foo4 | Foo5 | Fo
You can retain the non-missing value and apply it to any missing values, e.g.
data want ; set have ; length last $10. ; retain last '' ; if not missing(PARENT) then last = PARENT ; else PARENT = last ; drop last ; run ;