【问题标题】:How should I convert cell arrays data into single cell arrays separately in a "for" loop我应该如何在“for”循环中分别将单元格数组数据转换为单个单元格数组
【发布时间】:2017-09-17 00:29:57
【问题描述】:

我有几个 (500) 个文件,我将它们导入 Matlab。有 500 个单元格,每个单元格都有大小为 {5000 x 2} 的数据。我想保存 在循环中将它们分别放入像 M 和 N 这样的数组中。像 M(i) 和 N(i) 这样我就可以对循环内的数据进行任何类型的处理或拟合。

                   k=1:500
                 value(k) = {mydata{k}(:).data};
                  IV{1,k}=value{1,k};
                  A(k)=cat(1, IV{1,k});
                  M(k)=A(:,1);
                  N(k)=A(:,2);

如果我检查它,“H = cat(1, IV{1,4});”连接命令非常适合保存到单个数组中。但它没有进入循环。我认为问题在于单元格数组内容的正确使用。

【问题讨论】:

    标签: arrays matlab for-loop matrix cell-array


    【解决方案1】:

    我喜欢在这种情况下使用 cell2mat。 https://www.mathworks.com/help/matlab/ref/cell2mat.html 我会把你的单元格变成一个数组,你也许可以完全避免 for 循环。

    【讨论】:

    • 它不能解决我的问题。 “cell2mat (IV{1,1})”。它显示错误“来自非单元格数组对象的单元格内容引用。您能否提供详细信息?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 1970-01-01
    • 2019-11-07
    • 2017-05-22
    • 2012-06-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多