How to add numeric values to cell array?

23 visualizzazioni (ultimi 30 giorni)
names = {'A' 'B' 'C' 'D' 'E'};
val = [0;1.5;0.5;0.5;1.5]
I want my output as folows
A 0
B 1.5
C 0.5
D 0.5
E 1.5

Risposta accettata

Star Strider
Star Strider il 7 Apr 2021
Try this:
names = {'A' 'B' 'C' 'D' 'E'};
val = [0;1.5;0.5;0.5;1.5];
C = {[names{:}].' val}
C1 = C{:,1}
C2 = C{:,2}
TC = table(C1,C2)
.
  6 Commenti
Star Strider
Star Strider il 8 Apr 2021
Stephen — Thank you!
Another option is to replace them with string variables:
names = {"A1" "B1" "C1" "D1" "E1"};
.
Souarv De
Souarv De il 8 Apr 2021
Modificato: Souarv De il 8 Apr 2021

Accedi per commentare.

Più risposte (1)

David Hill
David Hill il 7 Apr 2021
for k=1:length(names)
names{k}=[names{k},' ',num2str(val(k))];
end
  1 Commento
Souarv De
Souarv De il 7 Apr 2021
@David Hill It is ok but in your code the output becomes again a cell type and both values are merged together as individual enitity of cell.

Accedi per commentare.

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by