1

我正在尝试在 MATLAB 中创建一个 10 x 8 数组,其中填充了浮点值。

想法?

更新:
我实际上是在尝试创建一个空的 10 x 8 浮点型数组。我怎样才能做到这一点?

4

3 回答 3

3

你可能想看看这个zeros函数。要创建一个包含全零的 10 x 8 矩阵,请使用

matrix = zeros(10, 8);

要强制元素为某种类型(例如单精度),请使用附加class参数,例如

matrix = zeros(10, 8, 'single');

(我认为,默认是双精度)

于 2012-11-26T12:08:40.347 回答
2

更新:OP的澄清使这个答案过时了。


如果您只想创建具有特定值的矩阵,这是一种单行方法:

数据 = [0。0.1 0.2 3. 4. 5. 6. 7. 8. 0.9;0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9; ...; 0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9]

多线方法(如果您要复制粘贴数据):

数据 = [
0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9
0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9
0. 0.1 0.2 3. 4. 5. 6. 7 . 8. 0.9
0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9
...
0. 0.1 0.2 3. 4. 5. 6. 7. 8. 0.9
]

但是,正如许多人rand(10,8)在床上写的那样,您可以看到,通常的做法是不使用某种函数来创建 (10,8) 矩阵。说:rand, ones, zeros, 或其他一些技巧说reshape((1:1:80), 10, 8).

于 2012-11-22T18:59:26.987 回答
2
matrix = single(rand(10,8));

float 是 Matlab 中的单曲

rand(10,8);返回一个尺寸为 10x8 的矩阵,格式为双精度...您可以将返回值转换single(rand(10,8))为获取浮点值...如果由于某种原因您需要浮点精度而不是双浮点精度

于 2012-11-22T19:06:50.120 回答