简体   繁体   English

将矢量值分配给彼此

[英]Assign vector values to one another

I have two vectors: 我有两个向量:

A = c(letters[1:4])
B = c(1,2,3,4)

How can I code so that each value in B is correspondingly assigned to A as such? 我如何编码,以便B中的每个值都相应地分配给A?

a <- 1
b <- 2
...

Or: 要么:

names(B) <- A

The result: 结果:

> B
a b c d 
1 2 3 4 

> B['b']
b 
2

We can use assign 我们可以使用assign

for(i in seq_along(A)) assign(A[i], B[i])
a
#[1] 1

But it is better to have a named list instead of having multiple objects in the global environment ie 但最好有一个命名list而不是在全局环境中有多个对象,即

lst <- as.list(setNames(B, A))

The element can be extracted 可以提取元素

lst[['a']]
#[1] 1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM