Clear Filters
Clear Filters

Tables: Create new variables by modifying existing ones

1 view (last 30 days)
Dear All,
I have a table and I would like to create new variables (columns) by modfying existing ones. I have seen examples where poeple apply functions, but these were typically restricted to numerical operations. Supoose I have the following table:
A B C
obs1 te:st X
obs2 test Y
I would like to create
A B C D
obs1 te:st X testX
obs2 test Y testY
So:
  1. Drop special characters (":")
  2. Append two string columns.
Can anyone help me out?
Thanks in advance!

Accepted Answer

Guillaume
Guillaume on 19 May 2016
Edited: Guillaume on 19 May 2016
Use regexprep to replace patterns (with empty strings in your case), and strcat to concatenate cell arrays of strings:
t = cell2table({'obs1', 'te:st', 'X'; 'obs2', 'test', 'Y'}, 'VariableNames', {'A', 'B', 'C'})
t.D = strcat(regexprep(t.B, '\W', ''), test.C)
The regular expresion I've used will drop any character other than [a-ZA-Z0-9_]

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!