2014-02-26 50 views
0

我有一個單元格數組。其中一列填滿日期,目前格式爲'yyyy-mm-dd'。我從使用datainsert方法說得到一個錯誤信息爲datainsert方法創建時間戳

「無法在第1行第3列,2014-02-07時間戳格式必須是YYYY-MM-DD HH插入元件:mm:ss的[。 fffffffff]「

日期已經是格式yyyy-mm-dd。當我嘗試將它們轉換爲上述格式時,下面的行不起作用?該錯誤消息是"Unrecognized month format. Format string: yyyy-mm-dd hh:mm:ss."

export_full(:,3) = cellstr(datestr(export_full(:,3), 'yyyy-mm-dd hh:mm:ss'))'; 

回答

1

由於m可能是monthminute,你應該在格式字符串中使用mm爲一個月,MM爲分鐘。 Matlab將接受日期全部小寫和全部大寫(例如HH:MM:SS)的使用。

這裏有datainsert從幫助相關的事情:

如果數據是包含MATLAB日期,時間或時間戳單元陣列, 日期的格式必須爲YYYY-MM-DD的日期字符串,時間必須是 時間字符串,格式爲HH:MM:SS,時間戳必須爲​​格式爲yyyy-mm-dd HH:MM:SS.FFF的 的字符串。空條目必須爲空字符串 ,並且在調用datainsert之前,單元陣列中的任何NaN必須轉換爲空字符串 。

所以如果你的日期字符串已經是yyyy-mm-dd他們應該被接受 - 你可能想要檢查你沒有任何迷路的NaN值。

+0

我剛剛運行XSUM = SUM(isnan(cell2mat(export_full(3)))) XSUM = 0所以我可以看到有沒有NAN在我的數據。我使用HH:MM:SS而不是hh:mm:ss – mHelpMe

+0

export_full(3)或export_full(:,3)正確地轉換了我的日期字符串? 「第1行第3列」的實際內容是什麼? (假設您的單元陣列中的位置會使它窒息) – nkjt

+0

新的錯誤消息是使用數據庫/ datainsert(行132)的錯誤 無法完成插入操作。傳入的表格數據流(TDS)遠程過程調用(RPC)協議 流不正確。參數12(「」):提供的值不是數據類型爲float的有效實例。檢查 源數據的無效值。無效值的示例是精度大於 的數值型數據。 – mHelpMe