在rnn包中,int可以使用int2bin转换为二进制。像
a= int2bin(8)
现在当我们在a上使用bin2int
时,它应该给出8.简单
bin2int(int2bin(8))
应为8.但它正在提供其他内容:134217728。
为什么呢?将它转换回int的正确方法是什么。
答案 0 :(得分:0)
我无法访问rnn包,因为它报告了一些错误 https://cran.r-project.org/web/packages/rnn/index.html页面。我建议你试试这个。
library(binaryLogic)
as.binary(8) ///[1] 1 0 0 0
as.intfrombinary <- function(x) {
returnvalue<-
sum(2^(which(rev(unlist(strsplit(as.character(x), "")) == 1))-1))
return(returnvalue)
}
as.intfrombinary(as.binary(8)) ///[1] 8