- Extract the string from the cell array: First, access the string stored in the cell array 'T'.
- Split the string: Use the 'split' function to split the string into parts based on the semicolon delimiter. Since the input is a character vector, the output of 'split' will be a cell array of character vectors.
- Convert to a string array: Finally, convert the cell array of character vectors to a string array.
How to convert a 1x1 table coining a list of N names into a Nx1 string of names
조회 수: 18 (최근 30일)
이전 댓글 표시
I have a 1x1 table T element which contains several names as the following
T = { 'Aaaa; Bbbb; Cccc; Dddd' }
I would like to convert it into a 4x1 string array of 4 names as
TT = ["Aaaa" ; "Bbbb" ; "Cccc" ; "Dddd"]
so that TT(1)="Aaaa", etc.
how can I do it?
댓글 수: 0
답변 (1개)
Lokesh
2024년 5월 28일
편집: Lokesh
2024년 5월 28일
Hi Nicola,
It appears that T is a cell array containing a single string. To achieve the conversion to a 4x1 string array 'TT' as described, you can follow these steps in MATLAB:
Here's how you can do it:
% Given cell array T
T = {'Aaaa; Bbbb; Cccc; Dddd'};
% Extract the string from the cell array
str = T{1};
% Split the string into parts based on the semicolon
parts = split(str, '; ');
% Convert the cell array of character vectors to a string array
TT = string(parts);
% If you need TT to be a 4x1 column vector explicitly
TT = reshape(TT, [], 1);
Refer to the following documentation to know more about 'split':
댓글 수: 1
Dyuman Joshi
2024년 5월 28일
Your code has a bit of redundancy. Here's a cleaned up version -
T = {'Aaaa; Bbbb; Cccc; Dddd'};
out = string(split(T, '; '))
Check the output after each operation you perform and you will catch the redundancies.
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!