append string to each element in string cell array
조회 수: 260 (최근 30일)
이전 댓글 표시
x_label =
'8' '16' '24' '32' '40'
How can I append ' GHz' to each element in the cell array? Thanks! Can it only be done with a for loop?
댓글 수: 0
채택된 답변
추가 답변 (1개)
Sean de Wolski
2011년 10월 14일
x_label = { '8' '16' '24' '32' '40'}
x_labelGHz = cellfun(@(c)[c 'GHz'],x_label,'uni',false)
One way
댓글 수: 3
Sean de Wolski
2011년 10월 14일
yes, cellfun is basically a for loop that does the function to each cell.
The @(c)[c 'GHz'] takes a cell, c, and concatenates it horizontally with 'GHz'. I agree Fangjun's method is better for this case, I don't think I've ever used strcat before. cellfun is more powerful for other things. Perhaps if you wanted the strings as column vectors:
@(c)[c 'GHz'].'
Sean de Wolski
2011년 10월 14일
And it's not an inline function but a function handle; significantly faster and in current times more common.
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!