Error in Joining multiple date time duration id date is in cell Array
古いコメントを表示
I am working on time series data. I am joining multiple time duration data . I need help, If duration is in cell array then I am unable to join the time series .
I am getting the following error
Error in matlab.internal.tabular.private.numArgumentsFromSubscriptRecurser (line
7)
n = numArgumentsFromSubscript(a, s, ctxt);
Error in tabular/numArgumentsFromSubscript (line 97)
sz =
matlab.internal.tabular.private.numArgumentsFromSubscriptRecurser(x,s,context);
Error in get_fieldnames (line 33)
structtable.Date = duration(structtable.Date.Hour,
structtable.Date.Minute, structtable.Date.Second); %extract h/m/s
and make that a duration.
Error in MainFcn (line 22)
[joinedtimetable] = get_fieldnames(Content);
I have added work bench. Please find the attachment. Please provide the correct file path.
3 件のコメント
Adam Danz
2020 年 1 月 8 日
Given the 10 files you provided, once they are added to the Matlab path, how do we recreate the problem?
Please proivde the code we can execute to recreate the problem.
Guillaume
2020 年 1 月 8 日
What is the class and size of
structtable
structtable.Date
when the error occurs?
Completely unrelated and very minor but why the brackets around joinedtimetable in
[joinedtimetable] = get_fieldnames(Content);
They don't do any harm but are completely unnecessary. After all, you don't have brackets around errorMessage in
errorMessage = sprintf('Error: file not found:\n\n%s', fullFileName);
so why there?
Life is Wonderful
2020 年 1 月 8 日
編集済み: Life is Wonderful
2020 年 1 月 8 日
採用された回答
その他の回答 (1 件)
Sylvain Lacaze
2020 年 1 月 8 日
Hi Matlab,
You're overriding yourself:
structtable.Date = duration(structtable.Date.Hour, structtable.Date.Minute, structtable.Date.Second);
In the first iteration of the loop, structtable.Date is a datetime array, but you then step on it, to make it a duration. In the second iteration of the loop, structtable.Date.Hour doesn't exist (Hour is not a property of a duration object).
Did you mean:
structtable.SomeotherVariableNameLikeDuration = duration(structtable.Date.Hour, structtable.Date.Minute, structtable.Date.Second);
HTH,
Sylvain
カテゴリ
ヘルプ センター および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



