如何将向量分配给R中数据帧的列的子集



我有一个数据帧。假设它有15行。我想把一个长度为12的向量分配给它的一列的行1到12。如何做到这一点?

month <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
DF <- c(0.2, 0.3, 0.5, 0.9, 0.8, 0.7, 1.2, 1.4, 1.5, 0.6, 0.4, 1, 0.4, 0.8, 1.3)
b <- c(1, 2, 1, 4, 1, 1, 1, 1, 3, 1, 1, 1)
df <- data.frame(DF)
df['cum_pd'] <- NA
df['marg_pd'] <- NA
rownames(df) <- month
df[1:12, "cum_pd"] <- b   # This part is my question

设计得很好,但这将适用于任意长度的dfb,假设您总是在n = len(b)处设置第一个n行。

df$cum_pd <- c(b, rep(NA, nrow(df) - length(b)))

也就是说,这种类型的数据编辑充其量是可疑的代码。

最新更新