我有一个带数字的矩阵1x5000
。现在我感兴趣的是从矩阵中获取不同位置的值,更准确地说是在矩阵的六个不同位置。这些地方应该根据长度,这些是我想要的数字:
这些值可以打印在另一个矩阵中,因此假设矩阵为1x5000
,则3/6将给出矩阵中间的数字。我是Matlab的新手,因此非常感谢帮助!
答案 0 :(得分:1)
由于你的问题不清楚,我可以尝试给你一个例子。
首先,您可以使用numel
函数来获取矩阵的大小。
在Matlab中很容易获得必要的元素:如果你知道它的数字(索引),你可以直接解决任何元素。所以:
let consoleDest = ConsoleDestination(owner: myLogger, identifier: "") // myLogger is an instance of XCGLogger
consoleDest.formatters = [MyFormatter()] // MyFormatter is a struct conforming to LogFormatterProtocol
myLogger.add(destination: consoleDest)
返回第100个元素。
现在你有了尺寸,知道该怎么做。最后一刻 - 如果x(100)
返回非整数怎么办?
numel(x) / 6
下一步:有很多方法可以划分数据。例如,现在你只有6个数字(1 / 6,2 / 6等),但如果有1000个呢?你不能手动完成。所以你可以使用index = ceil(numel(x)/6) %if you want NEXT element always
result = x(index)
循环,或者你可以使用索引矩阵或完善comment Stewie Griffin。
我的例子:
for
答案 1 :(得分:0)
MATLAB中的冒号表示法提供了一种从v:
中提取一系列元素的简便方法v(3:7) %Extract the third through the seventh elements
您可以手动输入范围或使用函数将分数转换为合适的范围