-3
我有兩個命名向量。有些元素對兩者都是通用的。我想與它們在載體2值來代替在第一向量的所有元素,如果它是存在於載體2 實施例:替換R中向量中的通用元素
Vector1:
A1 A2 A3 A4 A5
0 0 0 0 0
Vector2:
A2 A5
3 5
Output Expected:
A1 A2 A3 A4 A5
0 3 0 0 5
我有兩個命名向量。有些元素對兩者都是通用的。我想與它們在載體2值來代替在第一向量的所有元素,如果它是存在於載體2 實施例:替換R中向量中的通用元素
Vector1:
A1 A2 A3 A4 A5
0 0 0 0 0
Vector2:
A2 A5
3 5
Output Expected:
A1 A2 A3 A4 A5
0 3 0 0 5
在註釋的溶液並不一概而論,僅當載體2是完全工作按照名稱嵌套在矢量1中(不存在出現在2中而不是1中的元素),並且它們的順序相同。更廣義的解決方案可能是這樣的(我正在改變向量值和訂單):
v1 <- c(A4 = 0, A2 = 0, A5 = 0, A1 = 3, A6 = 5)
v2 <- c(A5 = 3, A7 = 1, A2 = 4)
repvecs <- function(a = v1, b = v2) {
commons <- names(a)[names(a) %in% names(b)]
a[commons] <- b[commons]
return(a)
}
請顯示一些可重現的示例和預期輸出。使用'%in%'檢查 – akrun
添加詳細信息 –
嘗試'v1 [names(v1)%in%names(v2)] < - v2' – akrun