我正在用 R 编写一个 QC 程序来处理来自报告其自身错误代码的仪器的数据。代码以位值的形式报告,因此
0
表示“一切正常”,而:-
1, 2, 4, 8, 16, 32, 64, 128
每个都代表一个独特的错误。多个错误可能同时发生,在这种情况下,代码相加得到一个新的数字,例如:-
error "2" + error "32" = code "34"
由于这些总和都是唯一的,因此任何给定的代码值都可以分解为其组成错误。我正在寻找一种方法来编程识别这些代码中的错误。我正在努力寻找一种方法,但我能想到的一切都涉及查找表或一大堆循环......这两者看起来都不是很优雅。
我不是重新发明轮子,而是想知道是否已经存在一个R
函数可以做到这一点。
有人遇到过这样的问题吗?
最佳答案
您可以将数字转换为位,并使用该表示形式来查找错误。
2^(which(intToBits(34)==1)-1)
返回
2 32
希望这有帮助!
关于r - 独特元素的值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45243278/