gpt4 book ai didi

arrays - MATLAB 是否支持真正的一维数组?

转载 作者:行者123 更新时间:2023-12-03 23:33:34 26 4
gpt4 key购买 nike

如果我不必担心意外的 2d 操作,这真的会帮助我推理我的 MATLAB 代码。例如,如果我想对 1d 数组进行逐元素乘法,但一个是行,另一个是列,我最终会得到一个 2d 结果。

>> a = 1:8;
>> a = a(:);
>> a .* cumsum(ones(8))

ans =

1 1 1 1 1 1 1 1
4 4 4 4 4 4 4 4
9 9 9 9 9 9 9 9
16 16 16 16 16 16 16 16
25 25 25 25 25 25 25 25
36 36 36 36 36 36 36 36
49 49 49 49 49 49 49 49
64 64 64 64 64 64 64 64

我想通过尽可能保持我所有的数组 1d 来防止这种类型的事情,以及我无法预见的其他可能的问题。但是每次我检查向量的 size() 时,我都会得到至少 2 个元素:

>> size(1:1:6)

ans =

1 6

>> size(linspace(0, 5, 10))

ans =

1 10

我已经尝试了 How to create single dimensional array in matlab? 的建议和一些选项here (PDF 下载),我无法获得“真正的”一维数组。您将如何处理此类问题?

最佳答案

没有一维数组这样的东西。 documentation说(强调我的):

All MATLAB variables are multidimensional arrays, no matter what type of data. A matrix is a two-dimensional array often used for linear algebra.

您可以使用 isvector , isrowiscolumn分别识别向量、行向量和列向量。

关于arrays - MATLAB 是否支持真正的一维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65585403/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com