[英]I have a 15x15 matrix of 0s and 1s. How do I calculate the number of 1s in the entire matrix?
我创建了一个计数变量,用于计算矩阵 d1 中 1 的所有实例,但我没有从count
获得任何值:
d1 <- as.matrix(i1)
count <- 0
for ( i in d1 ) {
if ( i == 1 )
count++
}
count
你可以做sum(d1)
。 请注意, count++
不会在 R 中增加count
:它是一个 C 或 C++ 运算符,在 R 中不可用。还要尽可能避免在 R 中出现循环。
如果要计算字符数组中字符串"1"
的出现次数: sum(d1 == "1")
。
附加建议:既然您已经声明数组包含字符数据,那么在代码中的测试i == 1
中混合类型并不是一个好主意。 应该是i == "1"
。 事实上,在 R 中, 1 == "1"
是真的,所以它不是真正的错误,但它非常容易出错。
我做了这样的事情
d1<-sum(lengths(regmatches(m1,gregexec("0",m1))))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.