2016-02-29 117 views
0

是否可以替換結構變量中某個表的元素?我使用這種語法,但它給了我一個錯誤消息。替換結構變量(Matlab)中的表元素

File.Jan.Date(1,1) = Date2(1,1); 

這裏Date2是1x1表,File.Jan.Date是70082x2表。

以下是錯誤消息:

以下出錯從日期時間轉換爲細胞:錯誤 使用細胞轉換到小區從日期時間是不可能的。

我嘗試這樣一個簡單的例子:

Date=datestr('02/02/2012','mm/dd/yyyy') 
Date = datetime(Date,'InputFormat','MM/dd/yyyy'); 
Date.Format = 'MM/dd/yyyy' 
T = table(Date,'VariableNames',{'Date'}) 
T(1,1)=Date 

,給我下面的任務的

右側錯誤信息到表必須是另一個表或 細胞陣列。

+0

是'File.Jan.Date'單元陣列? – Daniel

+0

文件是包含Jan的1x1結構變量,它也是1x1結構變量。在Jan,我有Date爲70082x2表。這個日期是從excel文件中以''mm/dd/yyy''日期格式提取的。 – Aeroplane

+1

可能與[UndocumentedMatlab](http://undocumentedmatlab.com/blog/solving-a-matlab-mcos-bug)中討論的問題有關。 –

回答

0

使用Matlab表格,您可以按名稱引用列,然後通過索引引用行。因此,對於你的小例子,你可以做到以下幾點:

T.Date(1) = Date; 

對於你原來的問題,如果File.Jan.Date是一個表,我猜表的變量之一是日期時間?然後,你可以做以下(假設它被命名的DateField):

File.Jan.Date.DateField(1) = Date2.Date(1);