我有一张桌子:
Values = [2.1 2.4 2.5 2.6; ...
4.1 4.4 4.5 4.6; ...
6.1 6.4 6.5 6.6];
ID = {'x1', 'x4', 'x5', 'x6'};
Ta = array2table(Values,'VariablesNames', ID);
现在我有另一个ID列表:
ID = {'x1', 'x2', 'x3', 'x4', 'x5', 'x6', 'x7'};
我想扩展我的表格,以便在Ta
中我有数据的列上放置Ta
的值,以及我没有数据的单元格NaN
1}}。
如何在必要时展开我的表的VariableNames
并保留值?
答案 0 :(得分:1)
我们可以这样做: 首先,您需要创建新ID的表。 然后你可以像通常的数组一样在表格上形成。 例如:
x1 = [1; 2; 3; 4;]
x2 = [1;1;1;1]
x4 = [10;10;10;10]
T = table(x1,x2,x4)
T =
x1 x2 x4
__ __ __
1 1 10
2 1 10
3 1 10
4 1 10
创建新表:
x3 = [123;13;13;123]
x5 = [0;0;0;0]
T1 = table(x3,x5)
T1 =
x3 x5
___ __
123 0
13 0
13 0
123 0
要扩展第一个表,您必须立即使用索引:
T = [T(:,1:2) T1(:,1) T(:,3) T1(:,2)]
所以,现在你需要做的就是创建算法,用你的ID向量选择当前的数据表。