- 已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。
这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
6小时前关门了。
Improve this question
我正在使用RStudio 2022.12.0,我想通过字符串向量创建变量名。
我的向量是:
names <- c("John", "Mike", "Tom", "Ben", "Nathalia", "Stephanie")
我试着用一个外观从向量中的每个名字中创建一个可变的名字。
for (x in names)
{x <- print(paste("The name is", x))}
这将产生以下错误消息:
一个二个一个一个
它打印:
\[1\] "The name is John"
\[1\] "The name is Mike"
\[1\] "The name is Tom"
\[1\] "The name is Ben"
\[1\] "The name is Nathalia"
\[1\] "The name is Stephanie"
但我没有得到6个变量名为约翰,迈克,...,Stepganie。
如果有人能帮助我,我会很高兴。
谢谢
for (x in names){
x <- print(paste("The name is", x))
}
我希望能得到
John <- c("The name is John")
1条答案
按热度按时间laawzig21#
正如@akrun所说,你没有正确地索引你的循环,他正确的建议是给予你一个长度为6的变量
x
,每个变量都有“The name is whatever name”。但是,如果你真的想要这样的东西:你可以使用
assign
把名字输出为全局环境中的一个对象,你可以在同一个循环中完成这两件事:注我将
names
改为nnames
,因为在R中以固有函数命名不是一个好习惯(names
已经是一个基本R函数)