matlab - 如何定义动态命名矩阵?
问题描述
如果您使用 VBA 在 Excel 中定义从A1
到的范围,您可以使用. 另一方面,可以写下来。请问如何在MATLAB中使用第二种方式?A10
Range("A1:A10")
Range("A1:A"&10)
我有一些矩阵M1
, M2
, M3
, ...,我希望通过使用迭代器来定义它们,FOR
这有助于我完全停止编写矩阵名称。
解决方案
尽管有评论认为这种方法不受欢迎,但下面是一种以编程方式进行的方法:
% define cell with matrix names
number_of_matrices_I_want = 5;
my_matrix_names = repmat({'NA'}, 1, number_of_matrices_I_want);
for ii = 1:length(my_matrix_names)
my_matrix_names(ii) = {strcat('M',num2str(ii))};
end
% example for how to populate a matrix from "my_matrix_names"
x = rand(5,1); % fake numbers
y = rand(5,1);
eval([my_matrix_names{1} '= [x y]']);
推荐阅读
- python - SQLAlchemy 中带有选定列的 BETWEEN 子句
- mysql - Mysql-Specified key was too long-不明白为什么?
- c# - List.Count() 在 DevOps 构建中抛出 ArgumentOutOfRangeException,但不是在本地
- c# - C# Winforms - IF 语句的问题
- elasticsearch - ElasticSearch - [nested] 未能在路径下找到嵌套对象
- c - Visual Studio 中的远指针声明
- maven - Maven 似乎忽略了 MAVEN_OPTS
- javascript - FullCalendar.js - 避免本周的事件?
- python - 从 url 下载 csv 并使其成为数据框 python pandas
- postgresql - 在 postgresql 中使用多个左连接