在多个数据集和每个数据集中的多个列上循环一个函数

时间:2013-08-08 19:05:12

标签: r for-loop

我有六个数据集(set1到set6),每个数据集都有q1到q23列。如果列q的值小于阈值,我想打印每个数据集的所有行的第1列和第2列,假设为0.1。

我正在使用此语句来打印行,这些行是孤立的。

subset(set1, q1 < 0.1, select = (Column1 && Column2))

但是,我想编写一个嵌套的for循环来循环遍历sets1-6和每组内的1-23列。

这是我所拥有的伪编码的想法,但我认识到这不是正确的R语法。请帮帮忙?

for (i in 1:6)
{
    for (j in 1:23)
    {
        subset(set[i], q[j] < 0.1, select = (Column1 && Column2))
    }
}

1 个答案:

答案 0 :(得分:2)

您可以使用:

for (i in 1:6)
{
    for (j in 1:23)
    {
        x <- get(paste0("set",i))

        print(x[x[,paste0("q",j)]<0.1, 1:2])
    }
}