MATLAB Answers

0

How i can form Array List

Asked by SAMEER ahamed on 17 Feb 2014
Latest activity Commented on by SAMEER ahamed on 22 Feb 2014
Hi,
I am new for mat-lab , how i can want to make Array List form ? below example
for int i=1:20
X = 1;
Y=2;
X1 =4;
Y2 =5;
X2 =6;
Y2 =7;
end
Output i would like to store like : matrix =[[1,2],[4,5],[6,7]];

  0 Comments

Sign in to comment.

Tags

No tags entered yet.

1 Answer

Answer by Walter Roberson
on 17 Feb 2014
 Accepted Answer

MATLAB does not have array lists exactly like that. It has cell arrays which are similar.
matrix = {[X Y]; [X1 Y1]; [X2 Y2]}

  7 Comments

Walter Roberson
on 18 Feb 2014
You cannot get that. MATLAB does not support [[xxx]] notation for nested lists. The closest you can get is
matrix = cell(1, 2);
step = 1;
left_distance_X = 22;
left_distance_Y = 19;
right_distance_X = 71;
right_distance_Y = 19;
upper_distance_X = 45;
upper_distance_Y = 6;
right_distance_Y = 45;
bottom_distance_Y = 35;
matrix{1, step} = [left_distance_X, left_distance_Y, right_distance_X, right_distance_Y, upper_distance_X, upper_distance_Y, right_distance_Y, bottom_distance_Y];
step = 2;
left_distance_X = 26;
left_distance_Y = 23;
right_distance_X = 72;
right_distance_Y = 23;
upper_distance_X = 47;
upper_distance_Y = 11;
right_distance_Y = 47;
bottom_distance_Y = 36;
matrix{1, step} = [left_distance_X, left_distance_Y, right_distance_X, right_distance_Y, upper_distance_X, upper_distance_Y, right_distance_Y, bottom_distance_Y];
Note: this is not what SVM would use! SVM uses 2D numeric arrays, not list-of-arrays or nested-list. For 2D numeric arrays, use
matrix = zeros(2, 8);
step = 1;
left_distance_X = 22;
left_distance_Y = 19;
right_distance_X = 71;
right_distance_Y = 19;
upper_distance_X = 45;
upper_distance_Y = 6;
right_distance_Y = 45;
bottom_distance_Y = 35;
matrix(step,:) = [left_distance_X, left_distance_Y, right_distance_X, right_distance_Y, upper_distance_X, upper_distance_Y, right_distance_Y, bottom_distance_Y];
step = 2;
left_distance_X = 26;
left_distance_Y = 23;
right_distance_X = 72;
right_distance_Y = 23;
upper_distance_X = 47;
upper_distance_Y = 11;
right_distance_Y = 47;
bottom_distance_Y = 36;
matrix(step,:) = [left_distance_X, left_distance_Y, right_distance_X, right_distance_Y, upper_distance_X, upper_distance_Y, right_distance_Y, bottom_distance_Y];
thank's for reply me , now i have got result like ?
if true
% code
for i=1:2
disp(matrix{1,i}); %here matrix{1,i}=[left_distance_X, left_distance_Y, right_distance_X, right_distance_Y, upper_distance_X, upper_distance_Y, right_distance_Y, bottom_distance_Y];
%Here result -1 like Matrix
30
23
77
23
53
8
53
35
%Here result-2 like
31
25
72
25
46
15
46
42
%Here I have tried up to int child node ,after looping of every 1-by-8 matrix
dt = datestr(now,'mm-dd-yy-HH:MM:SS.FFF-AM');
combinedStr = strcat('Hello',dt);
disp(combinedStr);
docNode = com.mathworks.xml.XMLUtils.createDocument('lipreading');
docRootNode = docNode.getDocumentElement;
thisElement = docNode.createElement('id');
thisElement.appendChild(docNode.createTextNode(combinedStr));
docRootNode.appendChild(thisElement);
matrix_thisElement = docNode.createElement('matrix');
vector_thisElement = docNode.createElement('vector');
left_int_thisElement = docNode.createElement('int');
*%Here I would like to call Looping stored each 1-by-8 matrix values*
docRootNode.appendChild(left_int_thisElement);
docRootNode.appendChild(vector_thisElement);
docRootNode.appendChild(matrix_thisElement);
xmlFileName =['tempname','.xml'];
xmlwrite(xmlFileName,docNode);
edit(xmlFileName);
end
end
*Note : I would like to write XML to form like below ?*
if true
% code
<vector>
<int>3</int>
<int>-99</int>
<int>-6</int>
<int>79</int>
<int>-195</int>
<int>11</int>
<int>197</int>
<int>8</int>
</vector>
<vector>
<int>4</int>
<int>-99</int>
<int>-5</int>
<int>79</int>
<int>-195</int>
<int>12</int>
<int>196</int>
<int>9</int>
</vector>
<vector>
end
Hi,
I am new for matlab , now i have 10 frames video file , each frame values i need to stored in xml file ?
I have Matlab Code Below like :
for i=1:10
matrix{1,i}=[leftx,lefty,rightx,righty,uppertx,uppery,bottomx,bottomy];%1-by-8 matrix
end
Below format i want to stored values please let me know how i can format like ?
example :
<reading>
<id>id1</id>
<matrix class="vector">
<vector>
<int>2</int>
<int>1</int>
<int>44</int>
<int>45</int>
<int>42</int>
<int>24</int>
<int>14</int>
<int>84</int>
</vector>
<vector>
<int>7</int>
<int>31</int>
<int>674</int>
<int>455</int>
<int>2</int>
<int>24</int>
<int>4</int>
<int>84</int>
</vector>
</matrix>
</reading>

Sign in to comment.