Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R中的Matlab函数uint8_R_Matlab_Binary_Uint8array - Fatal编程技术网

R中的Matlab函数uint8

R中的Matlab函数uint8,r,matlab,binary,uint8array,R,Matlab,Binary,Uint8array,如何在R中生成一个uint8对象,该对象具有类似于Matlab中uint8函数的特征?我尝试过github链接,但结果不同。例如: R : b02 <- as.uint8( 2) b0a <- as.uint8( 10) bff <- as.uint8(255) bff + b0a [1] 9 bff/b0a [1] 25 b02 ^ b0a [1] 0 is.numeric(bff) [1] FALSE > class(bff) [1] "uint8" str(

如何在
R
中生成一个
uint8
对象,该对象具有类似于
Matlab
uint8
函数的特征?我尝试过github链接,但结果不同。例如:

R :
b02 <- as.uint8(  2)
b0a <- as.uint8( 10)
bff <- as.uint8(255)

bff + b0a
[1] 9
bff/b0a
[1] 25
b02 ^ b0a
[1] 0

is.numeric(bff)
[1] FALSE
> class(bff)
[1] "uint8"

str(b02)
 'uint8' raw 02
str(b02)
 'uint8' raw 02
str(bff)
 'uint8' raw ff

Matlab :

b02=uint8(  2)
b02 =
  uint8
   2
>> b0a =uint8( 10)
b0a =
  uint8
   10
>> bff =uint8(255)
bff =
  uint8
   255

bff + b0a
ans =
  uint8
   255
bff/b0a
ans =
  uint8
   26
b02 ^ b0a 
ans =
  uint8
   255
isnumeric(bff)
ans =
  logical
   1
>> strcmp(class(bff),'uint8')
ans =
  logical
   1

class(b02)
ans =
    'uint8'
>> class(b0a)
ans =
    'uint8'
>> class(bff)
ans =
    'uint8'
R:
b02 b0a=uint8(10)
b0a=
uint8
10
>>bff=uint8(255)
bff=
uint8
255
bff+b0a
ans=
uint8
255
bff/b0a
ans=
uint8
26
b02^b0a
ans=
uint8
255
isnumeric(bff)
ans=
符合逻辑的
1.
>>strcmp(等级(bff),‘uint8’)
ans=
符合逻辑的
1.
类别(b02)
ans=
‘uint8’
>>类别(b0a)
ans=
‘uint8’
>>级别(bff)
ans=
‘uint8’

解决上述问题似乎不太可能帮助您实现最终目标。在R中,最接近uint8的是
raw
格式。这可以转换为您选择的任何其他数据类型,因此最好学习如何使用它

为了完整性,值得指出的是,使用R的S3面向对象系统,定义自己的uint8类非常容易。下面是一个极其简化的示例,它可以获取数字或原始数据,并按预期执行简单的算法


uint8解决上述问题似乎不太可能帮助您实现最终目标。在R中,最接近uint8的是
raw
格式。这可以转换为您选择的任何其他数据类型,因此最好学习如何使用它

为了完整性,值得指出的是,使用R的S3面向对象系统,定义自己的uint8类非常容易。下面是一个极其简化的示例,它可以获取数字或原始数据,并按预期执行简单的算法


uint8你试过
mmap
package吗?@AliHadjihoseini是的,没用!你需要的具体行为是什么。是不是在添加时需要这些数字不溢出?@MrFlick我想要一个与Matlab函数完全相似的函数,因为我试图从数据库中读取序列化数据,我有一个用于淡化数据的Matlab脚本,我希望能够在R中执行此操作。@MrFlick添加并不是分割时唯一的区别,Matlab和R的行为是不同的!你试过
mmap
package吗?@AliHadjihoseini是的,没用!你需要的具体行为是什么。是不是在添加时需要这些数字不溢出?@MrFlick我想要一个与Matlab函数完全相似的函数,因为我试图从数据库中读取序列化数据,我有一个用于淡化数据的Matlab脚本,我希望能够在R中执行此操作。@MrFlick添加并不是分割时唯一的区别,Matlab和R的行为是不同的
0
uint8
的有效值,您的第8行不应该是:
if(any(x>=256 | x<0))stop(“uint8数字必须包含在0和255之间”)
?Yes@Hoki。我会改变的。老实说,这不是一个任何人都会实际使用的实现(我希望),更多的是一个练习,表明创建uint8是可能的,但在R
0中完全多余,对于
uint8
,这是一个有效的值,您的第8行不应该是:
如果(any(x>=256 | x<0))停止吗(“uint8数字必须包含在0和255之间”)
?是@Hoki。我会更改它。老实说,这不是任何人都会实际使用的实现(我希望),更多的是一个练习,表明创建uint8是可能的,但在R中完全多余