【问题标题】:convert a string to a cell in matlab在matlab中将字符串转换为单元格
【发布时间】:2015-07-01 21:20:53
【问题描述】:

我有一个整数列向量,我想将其转换为 matlab 中的单元格。以下是代码。但它没有输出我所期望的。

nodes = [10; 21; 44];
nodes = num2str(nodes)
nodes = num2cell(nodes)

nodes =

10
21
44


nodes = 

    '1'    '0'
    '2'    '1'
    '4'    '4'

谁能帮我解决这个问题?非常感谢您的时间和关注。

【问题讨论】:

  • 你想在单元格或数字中添加字符串吗?

标签: matlab


【解决方案1】:

在第三行的参数中,nodes 是一个字符串,而不是一个数字了。
因此,您可以使用cellstr-函数将字符串数组转换为字符串元胞数组。

nodes = [10; 21; 44];
nodes = num2str(nodes)
nodes = cellstr(nodes)

这个输出:

nodes =
10
21
44

nodes = 
    '10'
    '21'
    '44'

【讨论】:

    【解决方案2】:

    另一种方法是使用arrayfun(即for循环的包装器):

    arrayfun(@num2str, nodes, 'uni', 0)
    

    或者如果你想要单元格中的数字(而不是字符串)那么它只是

    num2cell(nodes)
    

    即没有num2str

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-28
      • 1970-01-01
      • 2014-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多