Strings: delete rows with empty values

46 views (last 30 days)
I have a very large string array (part of it is shown below), and sometimes the secound column contains "empty" values. I would like to delete each row whose second column is empty.
"laterite-00047" "" "zeros(0,1)"
"laterite-00048" "" "zeros(0,1)"
"laterite-00049" "204186,54901" "204186"
"laterite-00050" "204186,54901" "54901"
"laterite-00051" "" "zeros(0,1)"
"laterite-00052" "204186,54901" "54901"
  2 Comments
madhan ravi
madhan ravi on 25 Feb 2019
attach part of your string array as .mat file
Stephen23
Stephen23 on 14 Jul 2020
For a string array the correct method to way to cound the number of characters is to use strlength:

Sign in to comment.

Accepted Answer

madhan ravi
madhan ravi on 25 Feb 2019
a(~any(cellfun('isempty',a),2),:) % where a is your string array
  2 Comments
madhan ravi
madhan ravi on 25 Feb 2019
Alternative (faster):
a(~strcmp(a(:,2),""),:)
Aishwarya Venkatesh
Aishwarya Venkatesh on 14 Jul 2020
if i want to remove columns containing all empty values in the string. Then how this can be modified?

Sign in to comment.

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!