How can I match multiple contents of an array to a separate single array?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a .csv file where multiple postcodes (characters and numbers) correspond to a unique ID number (also characters and numbers).
e.g
- BS2 9TL, E00073143
- BS2 9TB, E00073143
- BS2 9XJ, E00073143
- BS2 8AT, E00073144
- BS2 8TY, E00073144
- BS2 8UA, E00073144
- BS2 8UG, E00073144
I need to create a new array for each unique ID number that stores the respective postcodes. The amount of postcodes for each ID number is not the same every time.
The file contains 9010 postcodes and 1258 ID numbers.
Can anyone show me how to go about doing this?
Many thanks!
0 Commenti
Risposte (2)
John BG
il 26 Apr 2016
Modificato: John BG
il 26 Apr 2016
If you really have postcodes along a .csv spreadsheet row, and the codes along another row, then you can do the following:
[a postcode]=xlsread('postcodes1.csv',1,'A1:A7')
[a bcode]=xlsread('postcodes1.csv',1,'B1:B7')
postcode=strtrim(postcode)
bcode=strtrim(bcode)
L_postcode=length(postcode)
[D,di,dj]=unique(bcode)
L_bcode=length(D)
for k=1:L_bcode
D{k}=[D{k} postcode(find(dj==k))']
end
Now you have all basic unique codes on the first row of the cell D.
the second and consecutive elements in each line (row) of D are all post codes with same basic code.
Further processing could be:
for k=1:L_bcode
str1=D{k,:}
% str1(k,1) contains one basic unique code
% str1(k,2) str1(k,2) .. str1(k,end) contains all the post codes
% with same basic code in str1(k,1)
end
If you find this answer of any help solving your question,
please click on the thumbs-up vote link,
thanks in advance
John
0 Commenti
Vedere anche
Categorie
Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!