首页 > 解决方案 > 在 R 中使用 For 循环遍历数据帧

问题描述

我有一个名为Produce_Output. 它需要一个X变量和一个Y变量,然后在 R 中执行一些计算、SQL 数据检索、将绘图保存到文件位置等。函数本身不会产生任何东西,但会触发其他操作。

我想通过已为其设置的数据框运行此功能。数据框有 8464 个 obs 和 2 个变量。我想使用该函数并将每 2 个变量一次传递给该函数一个观察值。

调用函数如下

for (Data_To_Process) {
    Produce_Output(TableA$Column1, TableA$Column2)
}

我收到以下错误

$<-.data.frame( *tmp*, "OND", value = c(3379L, 3121L, 1699L, : 替换有 8464 行,数据有3

我在这里阅读了一篇关于具有 NULL 的数据的帖子,我已经检查过了,但它没有。我也不明白它用什么代替了什么。我只希望它处理第一行,然后是下一行……然后是下一行……正如我所说,该函数没有输出,但使用插入的两个值触发其他过程。任何帮助,将不胜感激。

标签: rfor-loop

解决方案


Rui Barradas - 你完全正确,这就是问题所在。我知道循环的索引方法,但只能访问使用一列的实例,因此不明白如何在语法中引用其他列。谢谢你的帮助

“您传递的是整个列,而不是行。它可能类似于 for(i in 1:nrow(TableA)){Produce_Output(TableA$Column1[i], TableA$Column2[i])}”


推荐阅读