Format Questions
1 次查看(过去 30 天)
显示 更早的评论
MATLAB has strict format requirement.
1. A and B are in double format. C is in cell format. (C is read by: [~,C,~] = xlsread('C:\XXX\XXX.xlsx','Sheet1','M2:X2')
A =
[10
15
20
25
30];
B = [1423992 1356920 1356920
440353 436518 436518
1325369 1307792 1307792
1485221 1165422 1162373
1496009 1489431 1489431
6170946 5756085 5753036
];
C ='SECTOR' 'MKVALM' 'DVYDC' 'DVYLD500'
How can I combine A, B and C to get a matrix D so that:
D =
SECTOR MKVALM DVYDC DVYLD500
10 1423992 1356920 1356920
15 440353 436518 436518
20 1325369 1307792 1307792
25 1485221 1165422 1162373
30 1496009 1489431 1489431
SUM 6170946 5756085 5753036
Notice that the D(7,1) = 'SUM'.
2. Once I get D, I want to add an empty row and a row with numbers to get E,
E = SECTOR MKVALM DVYDC DVYLD500
10 1423992 1356920 1356920
15 440353 436518 436518
20 1325369 1307792 1307792
25 1485221 1165422 1162373
30 1496009 1489431 1489431
SUM 6170946 5756085 5753036
35 12 12 14
Notice there is an empty row between 'SUM 6170946 5756085 5753036' and '35 12 12 14'.
Any help will be appreciated!
2 个评论
Walter Roberson
2012-6-24
You cannot construct that D vector except as a character array, in which case D(7,1) would be 'S' .
If you construct D as a cell array, you would have to show quotation marks and [] in the display of it:
'SECTOR' 'MKVALM' 'DVYDC' DVYLD500'
[10] [1423992] [1356920] [1356920]
and so on.
采纳的回答
Andrei Bobrov
2012-6-24
Ac = num2cell(A);
Bc = num2cell(B);
D = [C;Ac,Bc(1:end-1,:);{'SUM'},Bc(end,:)];
E = [D;cell(1,4);{35, 12, 12, 14}];
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!