gpt4 book ai didi

r - for循环中的变量赋值

转载 作者:行者123 更新时间:2023-12-04 11:24:08 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
R: How to convert string to variable name?

在 R 中,我正在编写一个 for 循环,它将迭代地创建变量名称,然后为每个变量赋值。

这是一个简化版本。目的是根据迭代变量 i 的值创建变量的名称,然后用 NA 值填充新变量。

(我只是在下面进行 1:1 迭代,因为问题的发生与循环本身无关,而是与变量的创建和分配方式有关。)

for (i in 1:1) {

#name variable i "Variablei"
varName = paste("Variable", as.character(i), sep="")

#fill variable with NA values
varName = rep(NA, 12)

print(varName)
print(Variable1)
}

现在,varName 打印为

 [1] NA NA NA NA NA NA NA NA NA NA NA NA

并且未找到 Variable1。

我在某种程度上理解为什么这是错误的。在第一行中,varName 成为一个向量,其唯一条目是字符串“Variable1”。然后 varName 被重新分配以保存 NA 值。所以当我尝试打印 Variable1 时,它不存在。

我认为更普遍的问题是赋值与相等。在第一行中,我希望 varName 等于 新创建的字符串,但在下一行中,我希望将 varName 分配给 NA 值向量。

创造这种区别的最简单方法是什么?我也愿意接受完全不同的、更好的方法来解决这个问题。

编辑:更改标题是因为我对问题的描述有误。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com