在 R 中,如何在应用 str_replace_all 后保留向量元素的名称?
In R, how can I keep the names of vector elements after applying str_replace_all?
我注意到函数 str_replace_all()
删除了我的字符向量中元素的名称。有谁知道如何解决这个问题,所以我在应用 str_replace_all()
?
后保留元素的名称
这是一个问题示例,我在其中创建了一个包含命名元素的向量,并将所有出现的字符“c”替换为“x”。您可以看到,我可以在调用 str_replce_all
之前使用 testvec["first"]
访问向量的第一个元素,但不能在调用
之后访问。
> testvec <- c("first"="abc", "second"="bcd", "third"="cde")
> testvec["first"]
first
"abc"
> testrepl <- str_replace_all(testvec, "c", "x")
> testrepl["first"]
[1] NA
您可以添加一行,将 testvec
的 names
分配给 testrepl
的 names
:
testrepl <- str_replace_all(testvec, "c", "x")
names(testrepl) <- names(testvec)
testrepl["first"]
# first
# "abx"
我注意到函数 str_replace_all()
删除了我的字符向量中元素的名称。有谁知道如何解决这个问题,所以我在应用 str_replace_all()
?
这是一个问题示例,我在其中创建了一个包含命名元素的向量,并将所有出现的字符“c”替换为“x”。您可以看到,我可以在调用 str_replce_all
之前使用 testvec["first"]
访问向量的第一个元素,但不能在调用
> testvec <- c("first"="abc", "second"="bcd", "third"="cde")
> testvec["first"]
first
"abc"
> testrepl <- str_replace_all(testvec, "c", "x")
> testrepl["first"]
[1] NA
您可以添加一行,将 testvec
的 names
分配给 testrepl
的 names
:
testrepl <- str_replace_all(testvec, "c", "x")
names(testrepl) <- names(testvec)
testrepl["first"]
# first
# "abx"