Delete rows with strings for a cell array

I have a cell array that contains a few rows of strings and want to delete the whole row if they are all strings.
'Cause' 'CSSR (%)' 'MO Attempts' 'MT Attempts'
[1x20 char] [ 1] [ 1] [ 0]
I only want to delete the first row and not the second.
Thank you

 采纳的回答

A = {'Cause' 'CSSR (%)' 'MO Attempts' 'MT Attempts'
'fghytresdfhjjiiuyt' [ 1] [ 1] [ 0]};
out = A(any(~cellfun(@ischar,A),2),:);
or
out = A;
A(all(cellfun(@ischar,A),2),:) = [];

4 个评论

This takes out the rows that have some strings and numbers, I need to take out the rows that only have strings in it.
Thank you
When I run the code, it appears to do what you are asking. The all(...) part ensures that only rows in which every cell contains characters are deleted.
I must have changed the code, anyway it works.
Thank you
I have this format
'Time' 'DOY' 'VWC05' 'VWC10' 'VWC20' 'VWC50' 'T05' 'T10' 'T20' 'T50' 'PAW40' 'PAW65' '#' '#' 'cm^3/cm^3' 'cm^3/cm^3' 'cm^3/cm^3' 'cm^3/cm^3' '°C' '°C' '°C' '°C' 'mm' 'mm'
Which I want to delete it. They are on every 600th row, sometimes in 590th row. How do I delete it so that I can get the value that i want?
Thank you in advance.

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Characters and Strings 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by