Borrar filtros
Borrar filtros

Forming matrix with string

3 visualizaciones (últimos 30 días)
Sang Heon Lee
Sang Heon Lee el 23 de Sept. de 2017
Respondida: Walter Roberson el 24 de Sept. de 2017

How can I make function that forms a matrix with string? If string is 'idk' and number is 3 the output should be sth like this [idk,idk,idk;idk,idk,idk;idk,idk,idk], matrix of 'idk' with 3 rows and colums.

Respuestas (2)

Image Analyst
Image Analyst el 24 de Sept. de 2017
Editada: Image Analyst el 24 de Sept. de 2017
% Make the 9 strings into a cell array:
ca = {'idk','idk','idk';'idk','idk','idk';'idk','idk','idk'}
You'll see:
ca =
3×3 cell array
{'idk'} {'idk'} {'idk'}
{'idk'} {'idk'} {'idk'}
{'idk'} {'idk'} {'idk'}
If the 3 is really a variable, and you want an actual function instead of a single line of code, then you can do it like this, using repmat():
function ca = MakeCellArray(numRows)
% Make the 9 strings into a cell array:
oneCell = {'idk'}; % Make just one for a start.
% Turn it into a 3x3 array of cells
ca = repmat(oneCell, [numRows, numRows])

Walter Roberson
Walter Roberson el 24 de Sept. de 2017
function result = YourFunction
result = repmat(string('ijk'), 3, 3);
This requires R2016b or later.

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by