Filter löschen
Filter löschen

array comparison. help please!

1 Ansicht (letzte 30 Tage)
Diogo Queirós
Diogo Queirós am 16 Sep. 2014
Kommentiert: Diogo Queirós am 17 Sep. 2014
i have an array:
barr=
'SE BRG'
'PTC 0275'
'PTD 0262'
'PTC 0062'
'PTC 0471'
'PTC 0471 CJ 1'
'PTD 0084'
'PTD 0286'
'PTD 0286 CJ 1'
and a matrix:
pt =
'Name' 'S'
'PTC 0062' [ 500]
'PTC 0275' [ 315]
'PTC 0471' [ 790]
'PTD 0084' [ 500]
'PTD 0262' [ 630]
'PTD 0286' [ 630]
what i want to do is match the 'Name' with the array barr and create a new array with the respective 'S', and the elements that don't exist in the column 'Name' are [0]. so the correct result would be:
barr= Sbarr=
'SE BRG' [ 0]
'PTC 0275' [ 315]
'PTD 0262' [ 630]
'PTC 0062' [ 500]
'PTC 0471' [ 790]
'PTC 0471 CJ 1' [ 0]
'PTD 0084' [ 500]
'PTD 0286' [ 630]
'PTD 0286 CJ 1' [ 0]
can anyone help me with this?

Akzeptierte Antwort

Niko
Niko am 16 Sep. 2014
[~,ind]=ismember(barr,pt(2:end,1));
temp=pt(:,2); temp{1}=0;
Sbarr=[barr,temp(ind+1)]

Weitere Antworten (0)

Kategorien

Mehr zu Modeling finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by