首页 > 解决方案 > 根据最后一个已知值扩展数据框

问题描述

是否可以根据最后一个值扩展数据库?

例如:

 x <- c(1, 2, 3, 4, 5)
 y <- c(0.4, 0.6, 0.2, 0.2, 0.1)
 df <- cbind(x, y)

我希望能够将 x 扩展到 10,并且只使用最后一个 y 值 (0.1) 一直填充(即在所有缺失的字段中 x = 6、7、8、9、10)。可能吗?

标签: r

解决方案


这是一个基本的 R 想法,

rbind(df, setNames(data.frame(x = seq(6, 10), y = df$y[nrow(df)]), names(df)))

#    x   y
#1   1 0.4
#2   2 0.6
#3   3 0.2
#4   4 0.2
#5   5 0.1
#6   6 0.1
#7   7 0.1
#8   8 0.1
#9   9 0.1
#10 10 0.1

推荐阅读