How to split a column in a table into two columns?

6 vues (au cours des 30 derniers jours)
JFz
JFz le 24 Août 2015
Commenté : JFz le 25 Août 2015
Hi,
I have a table that has column like this:
name_num
ABC_123
EFG_456
GGGG
HHHHH
I would like to split the column into two: name and num like this:
name num
ABC 123
EFG 456
GGGG N/A
HHHHH N/A
I thought of varfun but I have difficulty with it. Would anyone help me?
Thank you.
Jennifer

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 24 Août 2015
Modifié(e) : Azzi Abdelmalek le 24 Août 2015
name_num={'ABC_123','EFG_456','GGGG','HHHHH'}
s1=regexp(name_num,'[^\d_]+','match')
s2=regexp(name_num,'\d+','match')
s2(cellfun(@isempty,s2))={'N/A'}
out=[[s1{:}]' [s2{:}]']
  1 commentaire
JFz
JFz le 25 Août 2015
Azzi, Thank you! yes, it works! But in my case, it is a table. So should I convert name_num column into a cell array and perform the regexp before convert back to table?
Jennifer

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Data Type Conversion dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by