How would I implement the following programatically instead of using evalin?

matlI have a list of signals in a loop. The variables names of the signals are in signal list.
oldsize=evalin('base', ['length(' signallist{i} ')']);
assignin('base', signallist{i}, ...
evalin('base', [signallist{i} '(1:shortestsignalsize)'])); % shorten all signals

5 件のコメント

Stephen23
Stephen23 2019 年 12 月 6 日
編集済み: Stephen23 2019 年 12 月 6 日
Is this code being called from inside a GUI?
Is is possible to simply pass the data as input/output arguments?
The most important question:
How did all of those separate variables get into the base workspace in the first place?
Bruce Vernham
Bruce Vernham 2019 年 12 月 6 日
Using a script called MDF import.
MDFImport developed and avaible in the community so I do not want to modify it.
Thanks
Stephen23
Stephen23 2019 年 12 月 6 日
編集済み: Stephen23 2019 年 12 月 7 日
"MDFImport developed and avaible in the community so I do not want to modify it."
If you downloaded this very outdated, very badly designed tool:
then I strongly recommend you avoid it. An updated, much better version is available here:
It lets you import the data into one variable (see the help for importMDF3), thus you can trivially avoid the bad code that you will otherwise be forced to write accessing all of those numbered variables:
Bruce Vernham
Bruce Vernham 2019 年 12 月 6 日
This is new than above and allows to interpolate all the data to a single axis.
Stephen23
Stephen23 2019 年 12 月 7 日
"This is new than above and allows to interpolate all the data to a single axis."
It might be newer, but it is a badly designed (no output argument) and GUIDE-based....
Better to use importMDF3 from here:
or probably something from the vehicle network toolbox.

サインインしてコメントする。

回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeData Import and Analysis についてさらに検索

製品

タグ

質問済み:

2019 年 12 月 6 日

コメント済み:

2019 年 12 月 7 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by