【问题标题】:Convert MATLAB char array to string将 MATLAB char 数组转换为字符串
【发布时间】:2013-04-25 13:58:40
【问题描述】:

从 MATLAB char 数组开始,A:

A(1,1) = 'A'
A(1,2) = 'P'
A(1,3) = 'R'
A(2,1) = 'M'
A(2,2) = 'A'
A(2,3) = 'Y'

如何将其转换为字符串单元 B,这样:

B{1} = 'APR'
B{2} = 'MAY'

编辑: A 是一个单元格,使用 cellstr 函数会报错

Error using cellstr (line 23)
S must be 2-D. 

【问题讨论】:

  • 你的错误信息中的 S 是谁?
  • 我有 A = data{3,1}(一些单元格数据),因此 A 现在是 。然后我输入 B = cellstr(A) 并得到错误。
  • 你能把数据放在问题里还是放在pastebin上?
  • 另外,cellstr 是否适用于 A?
  • 在尝试粘贴我的数据时,我似乎找到了解决方案。 T 说,最初我的数据是 中的数月数据。然后我尝试了 cellstr(T(1,:,:)) 导致上述错误。但是,当我分配 A(:,:) = T(1,:,:) 并执行 cellstr(A) 时,它起作用了。

标签: string matlab char


【解决方案1】:

对于 3D 字符数组 T

B = cellstr(T(1,:,:))

给出错误

Error using cellstr (line 23)
S must be 2-D.

而是先将其分配给 2D 矩阵,然后按照 Franck 上面的建议使用“cellstr”。

A(:,:) = T(1,:,:)
B = cellstr(A)

【讨论】:

    【解决方案2】:

    使用以下函数:http://www.mathworks.com/help/matlab/ref/cellstr.html

    >> B =  cellstr(A)
    
    B = 
    
        'APR'
        'MAY'
    
    >> B{1}
    
    ans =
    
    APR
    

    【讨论】:

      猜你喜欢
      • 2012-11-04
      • 1970-01-01
      • 1970-01-01
      • 2019-08-04
      • 1970-01-01
      • 2011-03-22
      • 1970-01-01
      • 1970-01-01
      • 2012-05-16
      相关资源
      最近更新 更多