Renaming str variables based on conditions
1 view (last 30 days)
Show older comments
Hello,
I have a list of Str variables (listed in 1158 columns)
{A} ans =
Columns 1 through 10
'eyeo' 'eyec' 'ESTR' 'TSTR' 'Co20' 'RT ' 'TEND' 'TSTR' 'Co01' 'RT ' ....
Is there a quick way to 1) Change 'TSTR' to a new str variable that depends on the very next variable eg. Column 4 becomes 'TSTRCo20'. Column 5 remains the same. Column 8 becomes 'TSTRCo01'. 2) Similarly change 'RT' to reflect the variable that preceded it. eg. column 6 becomes 'RTCo20' and column 9 becomes 'RTCo01'.
Thank you!
1 Comment
Jan
on 31 Mar 2012
Are you talking about strings or variables?
It would be easier to create an answer, if you post a complete example, which can be copied&pasted with input and wanted output. "{A} ans = Columns 1 through 10 'eyeo' ..." is not useful.
Accepted Answer
Jan
on 31 Mar 2012
A = {'eyeo', 'eyec', 'ESTR', 'TSTR', 'Co20', 'RT ', ...
'TEND', 'TSTR', 'Co01', 'RT '};
index = find(strcmp(A, 'TSTR'));
A(index) = strcat(A(index), A(index + 1));
index = find(strcmp(A, 'RT '));
A(index) = strcat(deblank(A(index)), A(index - 1));
>> A = {'eyeo', 'eyec', 'ESTR', 'TSTRCo20', 'Co20', 'RTCo20', 'TEND', 'TSTRCo01', 'Co01', 'RTCo01'}
0 Comments
More Answers (3)
See Also
Categories
Find more on Whos 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!