重複の可能性:
以前の非 NA 値を使用してベクトルに NA を設定しますか?
私はしばらくこれを理解しようとしてきましたが、このコーディングの問題に対する解決策を見つけることができないようです. NA
次の非列が別の列に表示されるまで同じ値を繰り返す列ベクトルを作成したいと思います。ここに、私が達成したいことを示す表を示します (列 2)。
[,1] [,2]
[1,] A a1
[2,] NA a1
[3,] NA a1
[4,] B a2
[5,] NA a2
[6,] A a3
混乱して申し訳ありません。前に記事を書いていたときは、本当にストレスを感じていたに違いありません。列 2 を修正しました (上記を参照してください)。あなたの投稿を読んだ後、効率的でもエレガントでもありませんが、私が思いついたコードは次のとおりです。
d <- paste("a", 1:sum(!is.na(column1)), sep="") # get a1, a2, a3
column2 <- rep(NA, length(column1) #create empty vector w/ column1 length
column2[!is.na(colum1)] <- d #when col1 has a value, populate col2 with a1
e <- na.locf.default(column2) #fill NAs in col2 with previous value