我如何能夠創建一個新向量,將( )vectB的內容替換為. 所以輸出將是. 的內容將保持不變。vectA'ab','cd','bc''aa','bb','cc'vectB'aa','bb','aa','cc'vectA
vectA <- c('ab','cd','ab','bc')
uj5u.com熱心網友回復:
一種常見的方法是使用命名向量,其中值是所需值,名稱是舊值。
lookup = c("ab" = 'aa', 'cd' = 'bb', 'bc' = 'cc')
vectB = unname(lookup[match(vectA, names(lookup))])
vectB
[1] "aa" "bb" "aa" "cc"
另一種常見的方法是使用factor標簽。as.character(如果您不想要課程結果,當然可以使用after factor。)
B = factor(vectA, levels = c("ab", "cd", "bc"), labels = c("aa", "bb", "cc"))
B
# [1] aa bb aa cc
# Levels: aa bb cc
這些都假設 A 中的所有值都將出現在重新編碼查找中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/524453.html
標籤:r细绳向量代替
