2015-09-12 45 views
0

我想整個單元陣列轉換下面的字符串單元陣列,我使用:數據轉換MATLAB

C = cellfun(@num2str, final, 'UniformOutput', false); 

final = 

    {'3F' 21 'F' '3/26/2014' 'P0702' [] [] [] [] [] [] [] 
    '3F' 201 'F' '11/4/2014' 'P0702' 'P0882' [] [] [] [] [] 
    '3F' 010 'F' '10/19/2014''P0715' 'P0717' [] [] [] [] [] 
    '3L' 014 'M' '12/8/2014' 'P0710' 'P0743' 'P0753' [] [] [] } 

它給了我一個錯誤

???對於 「單元格」類型的輸入參數,未定義的函數或方法「修復」。

在==錯誤> num2str在66 如果〜的isEmpty(x)的& & isequalwithequalnans(X,固定(X))

我曾嘗試所需要的數據類型轉換,但我我錯過了某處。 任何幫助,將不勝感激。謝謝

+0

您提供的單元格陣列分配代碼存在問題。這是你實際上如何創建單元格數組'final'?如果我更正了語法錯誤,轉換效果很好。 – user3667217

+0

我在這裏複製它可能會犯錯誤,你是在談論日期列最後一行中的語法錯誤,如果這是複製粘貼錯誤 –

+0

該作業應該是'final = {'3F'21'F '.....}'但不是'{final} =''3F'21'F'.....' – user3667217

回答

0

有關單元陣列代碼是不是有效的MATLAB語法。它應該像這樣格式化:

final = {'3F' 21 'F' '3/26/2014' 'P0702' [] [] [] [] [] []; 
     '3F' 201 'F' '11/4/2014' 'P0702' 'P0882' [] [] [] [] []; 
     '3F' 010 'F' '10/19/2014' 'P0715' 'P0717' [] [] [] [] []; 
     '3L' 014 'M' '12/8/2014' 'P0710' 'P0743' 'P0753' [] [] [] []} 
+0

當我檢查class(final {1,5})它會給我class = cell。 –

+0

如果你使用我上面發佈的單元陣列,你會得到嗎?我認爲在你的最後,你在單元陣列中有一個單元陣列。如果是這種情況,則需要退後一步,檢查數據導入/生成過程。 – user3667217

+0

是的,但我想通了。你說得對。有很多數據類型轉換來獲得它。謝謝你的投入和你的時間。讚賞它。 –