Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
替换R中列的元素_R - Fatal编程技术网

替换R中列的元素

替换R中列的元素,r,R,假设我有两个向量: a = c("1", "2", "3") b = c("a", "b", "c") 以及具有等于c(“1”、“1”、“2”、“1”、“3”、“2”)的列的数据帧 我想做的是用向量b中的项替换列中与向量a中的项相等的所有项(列中与a[1]相等的所有项都将变成b[1]) 我希望我的新专栏是c(“a”、“a”、“b”、“a”、“c”、“b”) 我知道我必须使用某种循环,但我尝试过的一切都不起作用 谢谢你的回复 您可以使用match来完成此操作 c <- c("1", "1

假设我有两个向量:

a = c("1", "2", "3")

b = c("a", "b", "c")
以及具有等于
c(“1”、“1”、“2”、“1”、“3”、“2”)
的列的数据帧

我想做的是用向量b中的项替换列中与向量a中的项相等的所有项(列中与a[1]相等的所有项都将变成b[1])

我希望我的新专栏是
c(“a”、“a”、“b”、“a”、“c”、“b”)

我知道我必须使用某种循环,但我尝试过的一切都不起作用


谢谢你的回复

您可以使用
match
来完成此操作

c <- c("1", "1", "2", "1", "3", "2")
match(c, a)
#[1] 1 1 2 1 3 2
b[match(c, a)]
#[1] "a" "a" "b" "a" "c" "b"

c您可以使用
match
来执行此操作

c <- c("1", "1", "2", "1", "3", "2")
match(c, a)
#[1] 1 1 2 1 3 2
b[match(c, a)]
#[1] "a" "a" "b" "a" "c" "b"

c您可以使用
match
来执行此操作

c <- c("1", "1", "2", "1", "3", "2")
match(c, a)
#[1] 1 1 2 1 3 2
b[match(c, a)]
#[1] "a" "a" "b" "a" "c" "b"

c您可以使用
match
来执行此操作

c <- c("1", "1", "2", "1", "3", "2")
match(c, a)
#[1] 1 1 2 1 3 2
b[match(c, a)]
#[1] "a" "a" "b" "a" "c" "b"

c
x关于“必须使用某种循环”的陈述:浏览本指南第3章和第4章可能是一个有用的练习。在R中解决问题时反复思考往往会使你误入歧途。矢量化代码需要实践,但这是一项有价值的技能,从长远来看会有回报。
x关于“必须使用某种循环”的说法:浏览本教程第3章和第4章可能是一个有用的练习。在R中解决问题时反复思考往往会使你误入歧途。矢量化代码需要实践,但这是一项有价值的技能,从长远来看会有回报。
x关于“必须使用某种循环”的说法:浏览本教程第3章和第4章可能是一个有用的练习。在R中解决问题时反复思考往往会使你误入歧途。矢量化代码需要实践,但这是一项有价值的技能,从长远来看会有回报。
x关于“必须使用某种循环”的说法:浏览本教程第3章和第4章可能是一个有用的练习。在R中解决问题时反复思考往往会使你误入歧途。矢量化代码需要实践,但从长远来看,这是一项有价值的技能。