循环通过相邻的单元,然后沿着R中的行向下

时间:2015-02-03 08:22:51

标签: c++ r excel excel-vba vba

我对R比较新,并且有一个.xlsx电子表格,我试图操纵。我已将电子表格导入到R中,它有近30列和10000行数据。我需要做的是只遍历4列,并检查3或2个相邻单元格是否具有相同的值。

如果他们这样做,我想计算这个实例。

我想要编写一个for循环,我将列a1与列b1比较到列c1等,然后存储具有相同值的相邻单元格的数量,然后循环到下一行。 我可以用C ++做到这一点,但我不习惯R的语法。

如果有人能给我一点指导,我真的很感激!

1 个答案:

答案 0 :(得分:2)

diff在这里很有用:

set.seed(42)
DF <- data.frame(matrix(sample(1:4, 20, TRUE), ncol = 4))
#  X1 X2 X3 X4
#1  4  3  2  4
#2  4  3  3  4
#3  2  1  4  1
#4  4  3  2  2
#5  3  3  2  3
sum(apply(DF, 1, function(x) sum(c(1, diff(x) != 0)) < 4))
#[1] 3