faster way of using fprintf

1 visualización (últimos 30 días)
Richard
Richard el 12 de Mzo. de 2012
If I have a large cell array say 10x26 where the first two columns are strings and the remaining columns are all numbers. Instead of having to write fprintf(1,'%s\t%s\t%f\t... and so on) is there a faster method which involves not having specify all of the fixed point notations.

Respuesta aceptada

Jacob Halbrooks
Jacob Halbrooks el 12 de Mzo. de 2012
You might try using REPMAT to specify one format for the numeric data that you repeat for the number of numbers you have. For example:
myData = {'a','b',1,2,3,4};
fSpec = repmat('%f\t',1,size(myData,2)-2);
fprintf(1,['%s\t%s\t' fSpec], myData{:})
  1 comentario
Oleg Komarov
Oleg Komarov el 12 de Mzo. de 2012
You have to add an additional step if you have more than one line of data:
myData = myData.';

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Variables en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by