Merging tables of dissimilar rows in MATLAB.

1 回表示 (過去 30 日間)
DEYIRE UMAR
DEYIRE UMAR 2018 年 8 月 27 日
編集済み: jonas 2018 年 8 月 27 日
My program runs in parallel using parfeval to generate two tables of data. one from a sensor and the other from a robot (UR5). I want to merge these two tables together. The common column is the Time, although there are little differences in their times as they run at different speeds and that makes the rows unequal too. But I want a table containing all the other variables from rows which times are equal or very close. So at the end, there will be only one column for Time. Find photos of sample results attached. Can I get a help?

採用された回答

jonas
jonas 2018 年 8 月 27 日
編集済み: jonas 2018 年 8 月 27 日
You can do the following steps:
If I remember correctly, synchronize will pad the shorter arrays with NaN's.
Please provide actual data (not images) if you need help with the code.
  9 件のコメント
DEYIRE UMAR
DEYIRE UMAR 2018 年 8 月 27 日
I really need this. the variable names are needed other than ' var'
jonas
jonas 2018 年 8 月 27 日
編集済み: jonas 2018 年 8 月 27 日
@Sean de Wolski: Thanks, that works!
@DEYIRE: That's easy. Just write your desired names in a cell array like this:
TT.Properties.VariableNames={'A','B','C','D','E','F','G','H','I','J'}
The cell array must have the same number of cells as the number of table columns (excluding the column with time), and you can only use names that also function as variables, i.e. A-Z and underscore _.
Please copy and paste the code from the previous comment one more time to your script. I made a small but important change.
Finally, please accept if the answer was helpful :)

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

その他の回答 (1 件)

DEYIRE UMAR
DEYIRE UMAR 2018 年 8 月 27 日
I got it now. I merged and removed NaN but the rows I have are too little because only rows with same Time were picked. I used this code:
Log_table = outerjoin(tcp_coordinates,forces,'MergeKeys', true); Log_table = Log_table(~any(ismissing(Log_table),2),:); writetable(Log_table,'AllData.csv','Delimiter',',')
Now am asked to make it a table with not only same row values of Time but also close values so that it becomes much. I don't know if this is possible? but it doesn't look easy.

カテゴリ

Help Center および File ExchangeTimetables についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by