Converting a rigid3d array into a table type

4 次查看(过去 30 天)
Lets's Consider a rigid3d array of 1xn array containing T, Rotational, Translational elements. I want to convert this into a table format with Location and orientation columns as shown in the figure. The output should something look like a dictionary in python with varying array dimensions for each key. However in matlab its only permitting with same number of columns array.

回答(2 个)

Nitin Kapgate
Nitin Kapgate 2021-2-9
If you execute the following code, the error "All table variables must have the same number of rows." is thrown in MATLAB.
viewIds = [1:10]';
a = zeros(5,3);
b = zeros(6,10);
t1 = table(viewIds, repmat(a,10,1), repmat(a,10,1));
This is because the MATLAB expects all table variables to have the same number of rows.
To overcome this problem, you can wrap the data in a cell and then add it to the table, as demonstrated in the following code:
viewIds = [1:10]';
c = {zeros(5,3)};
d = {zeros(6,10)};
t2 = table(viewIds, repmat(c,10,1), repmat(d,10,1));
The table t2 is created succesfully now.

Mohammad Hussein Yoosefian Nooshabadi

类别

Help CenterFile Exchange 中查找有关 Numeric Types 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by