Delete rows with certain values while keeping text in column

I have a large table with data on traffic times and modes. A sample is given below:
Now I would like to remove all rows with a zero. This would be easy to perform on a matrix with something like this:
rows_to_remove = any(data==0, 2);
data(rows_to_remove,:) = [];
However, when I load this table as a matrix, the text data on the travel mode is converted into a numerical value that has no meaning.
How do I remove all rows with a zero while keeping the text in the 5th and 7th column?

5 Commenti

Made a more or less temporary solution by adding 'class numbers' for each possible content of the text column, so that i can later re-add them with something of an ismember function.
However, a less long-winded solution would still be much appreciated.
"...load this table as a matrix..."??? What exactly did you do? Why not load it as a table with readtable()? And I'm not seeing any 0's in columns 5 and 7, just long strings with BIKE or GTC in them.
Maybe I should have been more clear.
I want to delete any row with any zero. On a matrix this can be done with the code i put above. On a table, such a command gives an error.
However, I can't use the import data tool and load the data with 'numeric matrix' as output type, because it converts the text into NaN or just a number.
So how do I do this.
Are those two numbers separated by a comma a string? Or is that like some European countries that use a comma instead of a decimal point so they are really numbers, not strings? Can you attach your data file?
Attaching a snapshot of file, wont help. To get full help, attach the file.

Accedi per commentare.

Risposte (0)

Categorie

Richiesto:

il 8 Giu 2017

Commentato:

il 9 Giu 2017

Community Treasure Hunt

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

Start Hunting!

Translated by