how to print in matlab in this format 1 1:2 2:6 3:7 4:8......?

1 1:2 2:6 3:7 4:8
1 1:9 2:5 3:2 4:1
2 1:3 2:1 3:3 4:9
.
.
.
.
.
the 1,2,3,4,are indices and values after : are random around 133 different values while 1,2,3 are categories how can I write a program for it some of the chunk I designed is given
r=regexp(s, '\w{1,3}', 'match');
l=length(r);
co=':';
for j=1:l
prompt='Enter the label for class';
str = input(prompt,'s');
f=find(r);
fprintf('%s\t%i%c',str,f,co,disp(r));
end
but don't get any output all I get is erroneous results

Réponses (1)

How about this:
for j = 1 : 3 % do for 3 rows.
% Get a new set of 4 random numbers in the range 1 to 131.
r = randi(133, 1, 4);
prompt = sprintf('Enter the label for class #%d : ', j);
str = input(prompt,'s');
fprintf('%s\t',str);
for k = 1 : length(r)
fprintf('%d:%d ', k, r(k));
end
fprintf('\n');
end
msgbox('Done with demo');

3 commentaires

I need to split them into single values that's why used regexp it is given here s=2523,16;2925,10;3069,4;2709,922;4,72;1281,16;4,4;2163,3087;4,10;2367,10;22,6078;2589,22;322,1990;16,4;10,4;2487,4;760,2188;2115,1396;16,16;17,1912;28,886;40,10;34,1090;1659,1486];
as mentioned b4 the desired output
Alright, just replace my "r = " line with the actual numbers you get from using regexp() or however you get them. That's what I was expecting you to do. I just used random numbers because you didn't give us any data to work with.
Have you still not gotten it to work yet?

Connectez-vous pour commenter.

Catégories

Commenté :

le 22 Août 2014

Community Treasure Hunt

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

Start Hunting!

Translated by