以下の3つの値があります。私がやりたいのは、 と同じ長さのベクトルを作成することですlookup
。NA
要素には の値が与えられreplace
、残りの要素には の対応する位置に値が与えられますdata
。例えば
lookup = c(NA, NA, 1, 2, NA, 3, NA)
data = c("user_3", "user_4", "user_6")
replace = "no_user_data"
望ましい出力は次のようになります。c("no_user_data", "no_user_data", "user_3", "user_4", "no_user_data", "user_6", "no_user_data")
tidyverse
ここでの重要な制約は、できるだけ活用したいということです。私の現在のソリューションは次のようになります。
data <- c(data, replace)
lookup[is.na(lookup)] <- length(data)
data <- data[lookup]
tidyverse
いくつかの魔法の助けを借りて、もっと良く見えると信じています。ありがとう!