使用其他变量名在R中使用循环创建新变量

瓦贡扎莱兹

我最近开始使用R / RStudio进行分析工作,但偶然发现了for循环将帮助我减少许多重复性任务的问题。

我有一个项目,我的下一个行动方针是使用数据集中几个变量的名称,向数据集中添加更多变量。

这是如果我一次给一个名字命名的样子:

#Create variable for if analyst got the game correct
master.set$Lee.Corso.RW <- ifelse(master.set$Lee.Corso == master.set$Winner, "Correct", "Incorrect")

我试图通过创建列表并在for循环中使用列表来为一系列名称执行此操作,如下所示:

Analyst.Names <- names(master.set[, 13:125])
names.length <- length(Analyst.Names)
An.Var.Names.RW <- paste(Analyst.Names[1:names.length], ".RW", sep = "")

for (i in 1: names.length){
  #Create variable for if analyst got the game correct
  master.set$An.Var.Names.RW[i] <- ifelse(master.set$Analyst.Names[i] == master.set$Winner, "Correct", "Incorrect")
}

当我运行for循环时,我没有任何错误,但是没有任何作用。数据集看起来完全一样。我希望我犯的错误很小。有谁知道我可以做到这一点的方法?

谢谢!

阿克伦

for循环中,问题在于我们$用来提取对象中的值

 master.set$An.Var.Names.RW[i] <- ifelse(master.set$Analyst.Names[i] == master.set$Winner, "Correct", "Incorrect")

相反,它可以是 [[

master.set[[An.Var.Names.RW[i]]] <- ifelse(master.set[[Analyst.Names[i]]] == master.set$Winner, "Correct", "Incorrect")

使用可复制的示例

data(iris)
nm1 <- names(iris)[1:3]
for(i in seq_along(nm1)) print(head(iris)$nm1[i])
#NULL
#NULL
#NULL

并将其更改为 [[

for(i in seq_along(nm1)) print(head(iris)[[nm1[i]]])
#[1] 5.1 4.9 4.7 4.6 5.0 5.4
#[1] 3.5 3.0 3.2 3.1 3.6 3.9
#[1] 1.4 1.4 1.3 1.5 1.4 1.7

区别在于,在第一种情况下,它实际上是在检查名称,nm1[i]而不是检查存储在该对象中的值,即“ Sepal.Length”,“ Sepal.Width”等。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用循环索引引用变量名并创建新的变量名?

来自分类Dev

在R中使用For循环创建新变量

来自分类Dev

R 通过部分匹配来自其他变量名的字符串来创建新的变量名

来自分类Dev

jQuery-在每个循环中使用变量名来命名新变量

来自分类Dev

在循环中使用变量变量名

来自分类Dev

使用R根据其他列创建新变量

来自分类Dev

使用R根据其他列创建新变量

来自分类Dev

是否可以使用MEL来创建动态变量名或其他名称?

来自分类Dev

在变量名中使用变量

来自分类Dev

如何使用for循环递增创建的jlabels的变量名?

来自分类Dev

为for循环中的每个循环创建新的变量名

来自分类Dev

在R markdown中使用带空格的变量名

来自分类Dev

在R函数中使用变量名代替列名

来自分类Dev

如何使用jQuery循环变量名

来自分类Dev

R-使用带for循环的其他变量在数据框中创建变量

来自分类Dev

R-使用带有for循环的其他变量在数据框中创建变量

来自分类Dev

在Shell脚本中使用变量名

来自分类Dev

python中使用数字的变量名

来自分类Dev

在Shell脚本中使用变量名

来自分类Dev

用其他变量名替换变量名

来自分类Dev

如何使用变量名创建字段?

来自分类Dev

使用JS变量名称命名其他变量

来自分类Dev

为什么Coffeescript在循环中使用其他变量?

来自分类Dev

为什么Coffeescript在循环中使用其他变量?

来自分类Dev

使用循环创建新变量

来自分类Dev

使用循环创建新变量

来自分类Dev

sql alchmeny:使用表名和其他变量名格式化SQL查询

来自分类Dev

C ++-在getline中使用变量作为变量名

来自分类Dev

C ++-在getline中使用变量作为变量名

Related 相关文章

热门标签

归档