Может быть, вы можете попробовать базовый код R ниже, используя ave
df <- within(df, Column <- ave(Column, Category, FUN = function(x) ifelse(x=="NULL",tail(x[x!="NULL"],1),x)))
# > df
# Category Date Column
# 1 Cat1 2018-03-23 19
# 2 Cat1 2018-03-24 19
# 3 Cat1 2018-03-25 19
# 4 Cat1 2018-03-26 19
# 5 Cat1 2018-03-27 19
# 6 Cat2 2018-03-23 25
# 7 Cat2 2018-03-24 25
# 8 Cat2 2018-03-25 25
# 9 Cat2 2018-03-26 25
# 10 Cat2 2018-03-27 25
ДАННЫЕ
df <- structure(list(Category = c("Cat1", "Cat1", "Cat1", "Cat1", "Cat1",
"Cat2", "Cat2", "Cat2", "Cat2", "Cat2"), Date = c("2018-03-23",
"2018-03-24", "2018-03-25", "2018-03-26", "2018-03-27", "2018-03-23",
"2018-03-24", "2018-03-25", "2018-03-26", "2018-03-27"), Column = c("19",
"19", "19", "19", "19", "25", "25", "25", "25", "25")), row.names = c(NA,
-10L), class = "data.frame")