Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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
Arrays 在Matlab中获取一个向量中的所有值_Arrays_Matlab - Fatal编程技术网

Arrays 在Matlab中获取一个向量中的所有值

Arrays 在Matlab中获取一个向量中的所有值,arrays,matlab,Arrays,Matlab,我有两个数组,A(500 x 128个整数值)和B(500 x 64个实值)。我想将两者连接起来得到C。问题是Matlab忽略了B中的所有值,因为它们都是小值。有没有办法不被忽视地获得所有价值观 谢谢。我认为这可以模拟您的问题: A = int8(randi(4,4)*10); B = rand(4,4)*10; C = [A B] C = 10 20 20 30 3 0 8 3 40 10 40 40 2 6 1 2 30 20

我有两个数组,A(500 x 128个整数值)和B(500 x 64个实值)。我想将两者连接起来得到C。问题是Matlab忽略了B中的所有值,因为它们都是小值。有没有办法不被忽视地获得所有价值观


谢谢。

我认为这可以模拟您的问题:

A = int8(randi(4,4)*10);
B = rand(4,4)*10;
C = [A B] 

C =

  10  20  20  30   3   0   8   3
  40  10  40  40   2   6   1   2
  30  20  10  30   2   1   6   6
  40  20  40  30   9   9   5   5
要获得所需的结果,必须在连接数据之前向数据中添加类型:

C = [double(A) B]
C =

 Columns 1 through 7:

   10.00000   20.00000   20.00000   30.00000    2.92979    0.31162    7.73694
   40.00000   10.00000   40.00000   40.00000    1.71392    5.82900    1.08936
   30.00000   20.00000   10.00000   30.00000    1.83903    0.84160    5.75773
   40.00000   20.00000   40.00000   30.00000    8.81039    9.31400    4.60636

 Column 8:

    3.10192
    1.75853
    5.75013
    5.39383

因此,当您提到
A
必须显示为双矩阵时,另一个矩阵
B
保持其原始类型。您可以在MATLAB中检查其他现有类型

我不认为他们忽视了,他们可能只是没有展示。。。尝试
C=[A,B];C(1:10129:130)
。这很有趣:将整型值和双精度值串联在一起会生成整型值result@LuisMendo:这是matlab中的一种模式。整数和双精度运算返回一个整数。否则,整数运算会很烦人,因为像<代码> x=x+1 < /代码>这样的行将返回一个双倍的值,而不是与x相同的值。我们中的许多人认为Matlab失败了。默认值应该是(在许多其他语言中也是)将操作强制到所提供的最高精度类。如果不想这样做,请明确指定输入是什么。例如(
R
syntax)
x=x+1L
其中“L”表示长整数。@Daniel啊,明白了。是的,它使许多人受益sense@CarlWitthoft这就是我最初的想法。也许Matlab在这方面的行为与键入是动态的这一事实有关。正如Daniel所说,使用
x
integer执行
x=x+1
,并自动保留
x