问题标签 [matlab-struct]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
103097 浏览

matlab - 在 MATLAB 中遍历结构字段名

我的问题很容易概括为:“为什么以下不起作用?”

输出:

特别是因为teststruct.('a') 确实有效。并fields(i)打印出来ans = 'a'

我无法理解它。

0 投票
2 回答
779 浏览

matlab - 如何将此文本文件放入 MATLAB 中的列表中?

我有一个文本文件,想将其导入 MATLAB 并使其成为一个列表:

上面有几百个这样的条目。每个都由一个空行分隔。我在想我可以扫描文本并将每个空白行之间的信息变成列表中的一个项目。一旦我有如下列表,我也希望能够按姓名查找每个人。

我想要类似的东西:

这似乎很简单,但到目前为止我一直遇到麻烦。我可能忽略了一些东西。有人有什么想法或建议吗?

0 投票
1 回答
3940 浏览

matlab - 如何在 MATLAB 中动态访问结构字段的字段?

我对访问一个字段的一般问题感兴趣,该字段可能被埋在包含结构中任意多个级别的深处。下面是使用两个级别的具体示例。

假设我有一个结构体toplevel,我在 MATLAB 命令行中使用以下内容定义它:

我可以midlevel通过将字段名称作为字符串传递来访问结构,例如:

但我无法bottomlevel以相同的方式访问该结构——以下语法无效:

我可以编写一个函数来查找fieldnameToAccess句点,然后递归迭代以获得所需的字段,但我想知道是否有一些聪明的方法可以使用 MATLAB 内置函数直接获取字段值。

0 投票
4 回答
6566 浏览

string - 如何格式化字符串以用作 MATLAB 中的结构体字段名称?

我想从字符串中删除连字符 ( -)、斜杠 ( /) 和空格 ( ),以便可以将其用作结构字段名称。name(i)

这是我目前使用该功能的丑陋方式strrep

我还尝试了其他变体,例如:

有什么更有效的方法来做到这一点?

0 投票
3 回答
5462 浏览

matlab - Matlab 中另一个结构中的结构大小(R2010a 64 位 linux)

我正在使用 Matlab API 将数据从专有格式加载到一系列结构中。这是加载文件后数据集的示例:

>>字段名(数据(1))

答案=

>> 数据(1).BT_Data

答案=

>> 字段名(数据(1).BT_Data(1))

答案=

我想遍历所有data(i).BT_Data(j). 我已经得到了data罚款的长度,但我无法得到BT_Data(每个都不同data(i))的大小/长度:

>> 长度(数据(1).BT_Data)

答案=

>> 大小(数据(1).BT_Data)

答案=

我在这里的预期结果是ans = 66(或等效的数组size())。

我对结构数据格式不是很熟悉,这可能是我努力的一部分。但是length(data)工作得很好,所以我很困惑为什么它不起作用BT_Data(我也试过BT_Data(:))。

我能找到的最相关的先前答案是1757250,但我无法让它工作(我认为它不适用于这里)。感谢您提供的任何见解。

------编辑------

这里有一些关于我必须如何使用 API 才能达到我所处的位置的更多见解:

>> system('ln -sf /opt/rwapi-matlab/lib/rwapi/smos/config/xml_rw_api.usr_conf.xml .');
setenv('XML_RW_API_HOME','/opt/rwapi-matlab/lib/rwapi');
路径(路径,'/opt/rwapi-matlab');

>> 产品 = RWAPI.product('SM_OPEB_MIR_SCLF1C_20110202T013659_20110202T014642_346_060_1')

Array SMOS Matlab 接口版本 1.4
(c) 2010 Array Systems Computing Inc. of Canada ( http://www.array.ca )
分发或修改此软件需要 Array 的书面许可

产品 =

方法、事件、超类

>> 数据 = prod.dataset(2)

数据 =

没有属性的 RWAPI.dataset 句柄。包:RWAPI

方法、事件、超类

>> 数据(1)

答案=

>> 数据(1).BT_Data

答案=

>> 数据(1).BT_Data(1)

答案=

>> whos
名称大小字节类属性

ans 1x1 1 逻辑
数据 1x19091 112 RWAPI.dataset
prod 1x2 112 RWAPI.product

0 投票
1 回答
34974 浏览

matlab - 访问结构数据(matlab)

a= struct('a1',{1,2,3},'a2',{4,5,6})

我怎样才能得到 1 的值;

我尝试使用返回错误的 a.a1{1}

如何访问 1?谢谢。

编辑 A = struct{'a1',[1 2 3],'a2',[4 5 6]}

我如何访问 1. 我使用A(1).a1但我得到1 2 3

0 投票
1 回答
5261 浏览

matlab - 如何从 MATLAB 中的 stepinfo 输出中提取数据成员?

stepinfo函数在传递函数(即stepinfo(tf))上运行时,典型结果是:

我对stepinfo. 它似乎返回一个结构。所以我将上述结果分配给一个变量并使用size(). 这是一个 1x1 矩阵。

这让我非常确信,如果不先将其分配给字符串然后执行字符串操作,我就无法从该结构中提取单个数据成员。

我需要 Overshoot 和 PeakTime 值,有没有人知道在不使用 PO 和 Tp 公式的情况下获取这些值的最佳方法 - 并且没有大量的字符串混乱?

0 投票
2 回答
7916 浏览

matlab - MATLAB结构合并

我有以下结构

依此类推,我在结构中有 50 多个字段

我有其他 3 个结构相同的结构,我想合并这个结构

当我有 3 个结构时,我将得到以下结构

0 投票
1 回答
28651 浏览

arrays - 如何在 MATLAB 中显示和访问结构体数组内容?

首先,我让用户输入他们自己的包含州、首都和人口的文本文件,然后我使用以下代码将所有这些值放入结构数组中:

我的第一个问题:是否可以显示结构中的所有?显示结构数组只是给了我这个:

我的第二个问题是:我是否可以通过尝试'California'仅查找来访问此结构中的信息?

0 投票
2 回答
581 浏览

matlab - 如何根据 MA​​TLAB 中的一个字段对结构体数组进行排序?

之前发布了关于如何显示和访问结构数组内容的文章。该文件由州、首府和人口组成。现在,我无法通过按字母顺序组织这些状态来创建新结构。我通过sortrows函数做到了这一点,我尝试将人口和大写字母的值与字母状态配对,但我似乎无法让它成为一个数组。我希望它是一个数组,所以我可以将它写入文件。这是我到目前为止所拥有的:

我希望我清楚自己。