How to display a matrix whose elements are strings?

Hi,
Consider we have two row matrices x and y. Both matrices have the same dimension 1 by m. I need to write a new string matrix z as z=[(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))]
Appreciated any help!

 Réponse acceptée

Guillaume
Guillaume le 10 Juil 2018
Modifié(e) : Guillaume le 10 Juil 2018
Not entirely clear on exactly what output you want.
If you have indeed two string vectors, e.g.:
x = ["one", "two", "three"];
y = ["four", "five", "six"];
then
z = compose("(%s, %s)", x', y')'
or something similar is probably what you're after.

7 commentaires

Hossein
Hossein le 10 Juil 2018
For a simple case X=[1 7 4]; Y=[3 8 9]; What I want as output is: Z=[(1,3),(7,8),(4,9)]
Almost the same. Please try the following.
X = [1 7 4];
Y = [3 8 9];
Z = compose("(%d, %d)", X', Y')';
Hossein
Hossein le 11 Juil 2018
Thanks for your answer. This code results in "(1,3)" "(7,8)" "(4,9)" But I need exactly an output like Z=[(1,3),(7,8),(4,9)]. Z is originally a matrix of high dimension (1 by m where m is greater than 2000). So I don't wanna be bothered modifying the output by adding commas and deleting "s.
Do you mean that you need the output to be a single string object that starts with "Z = [", and then has all of those pairs in () with commas between them, ending in "]" ?
Hossein
Hossein le 11 Juil 2018
Modifié(e) : Hossein le 11 Juil 2018
Yes, exactly. and please consider that I need a solution for Z with m pairs.
Walter Roberson
Walter Roberson le 11 Juil 2018
Modifié(e) : Walter Roberson le 11 Juil 2018
output = "Z = [" + strjoin(Z, ',') + "]";
where Z is as suggested by Akira Agata
Hossein
Hossein le 11 Juil 2018
Thanks Walter. This works.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by