【问题标题】:Accessing elements of a struct across field arrays跨字段数组访问结构的元素
【发布时间】:2013-10-21 01:47:07
【问题描述】:

我有一个名为“数据”的 1 x 1 结构:

 A: [1120x1 double]
 B: [1120x1 double]
 C: [1120x1 double]
 D: [1120x1 double]
 E: [1120x1 double]
 F: [1120x1 double]
 G: [1120x1 double]
 H: [1120x1 double]
 I: [1120x1 double]

我可以访问每个字段的每个元素,例如data.A(1) 但需要跨字段访问相同编号的元素,而无需单独调用 data.A(3)、data.B(3)、data.C(3) 等。有没有一种巧妙的方法来做到这一点?

另外,这也解决了这个问题,有没有一种方法可以改革结构,使每个字段的第 n 个元素成为自己的字段,这样结构现在包含 1120 个长度为 9 的字段(如AI =9)?

【问题讨论】:

    标签: matlab data-structures struct field


    【解决方案1】:

    你可以使用structfun:

    structfun(@(x) x(3), data)
    

    这将返回一个包含每个字段的第三个元素的数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-20
      • 1970-01-01
      • 1970-01-01
      • 2013-06-11
      • 1970-01-01
      • 2018-05-27
      • 2016-06-19
      • 1970-01-01
      相关资源
      最近更新 更多