dlmwrite 在循环中使用单元格类型作为名称

Posted

技术标签:

【中文标题】dlmwrite 在循环中使用单元格类型作为名称【英文标题】:dlmwrite in a loop using cell type as the name 【发布时间】:2014-10-10 03:57:21 【问题描述】:

我想通过调用我的单元格名称来保存我的文件名:

 bench(1:15).applicationNames

他们是这样的:

ans = 

   'mvt'


ans = 

   'symm'

测试了所有类型的转换(cellstr、char、sprintf),我似乎找不到将我的数组保存为循环中的波纹管的解决方案:

dlmwrite('result_<bench(a),applicationName>.csv'),[zz' sort(bench(a).norm)],',')

上面提到的每个 bench.application 都有一个名称。

【问题讨论】:

【参考方案1】:

使用sprintf 代替您的第一个字符串:

sprintf('result_%s.csv',bench(a).application:)

编辑:已修复,因为有人向我指出 bench.application 是一个单元字符串。

【讨论】:

我已经这样用过了,dlmwrite不支持单元格输入:dlmwrite(sprintf('%s.csv',bench(1).application),[zz' sort(bench(1).norm)],',') Error using sprintf Function is not defined for 'cell' inputs. 尝试将bench(1).application 替换为bench(1).application:。或char(bench(1).application). 通常在访问元胞数组时,例如使用c(i),您将获得仍由单元格包裹的单元格内容。当您改用ci 时,您只会获得单元格的内容,而没有单元格包装。因此,在您的情况下,您得到的是字符串,而不是单元字符串。 : 告诉 MATLAB 将单元矩阵中的每个单元转换为其实际内容 - 因为您只有一个单元,这与 application1 相同。

以上是关于dlmwrite 在循环中使用单元格类型作为名称的主要内容,如果未能解决你的问题,请参考以下文章

php foreach 循环中的 HTML 表格,其中仅当元素等于表格列标题名称时才会填充单元格数据

循环选择单元格时需要对象错误

循环遍历表的单元格并使用ForEach onClick - Javascript / Jquery

来自单元格的 Matlab 图例,用于使用 for 循环创建的绘图

循环遍历 DataGridView 单元格

如何在 UICollectionView 中循环一组单元格?