[英]Is there an R function to fill up values conditional to column?
我有一個示例對象
a <- 1 2 3 4 5 帶有維度名稱 2001 2002 2003 2004 2005
我還有一個對象
b <- 11 22 33 44 55 帶有維度名稱 1999 2001 2003 2006 2007
我有一年矢量
年份 <- c (1999:2007)
我想用 NA 填充 1999 年到 2007 年之間目前缺失的 a 值。
同樣,我想用 NA 填充 1999 年到 2007 年之間當前缺失的 b 值。
假設 'a' 和 'b' 被命名為vector
s,使用 'year' 向量創建NA
s 的命名向量,然后使用 'a' 的names
將 'a' 的值分配到該新vector
v1 <- setNames(rep(NA, length(year)), year)
v1[names(a)] <- a
同樣,在 'b' 上也這樣做
v2 <- setNames(rep(NA, length(year)), year)
v2[names(b)] <- b
-輸出
> v2
1999 2000 2001 2002 2003 2004 2005 2006 2007
11 NA 22 NA 33 NA NA 44 55
a <- structure(1:5, .Names = c("2001", "2002", "2003", "2004", "2005"
))
b <- c(`1999` = 11, `2001` = 22, `2003` = 33, `2006` = 44, `2007` = 55
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.