How to remove rows based on logical values in one column?

Hi
In my file I have 3 columns with many rows. One of the columns has 0/1 logical vlaues, I was wondering if there is command to remove all the rows associated with value 0 and keep all the one that are 1?

回答 (2 件)

madhan ravi
madhan ravi 2020 年 10 月 3 日

0 投票

T = table2array(readtable('73(4)_interval.xlsx'));
T(any(T==0, 2), : ) = []
Image Analyst
Image Analyst 2020 年 10 月 3 日

0 投票

Let's say column 2 is the one you want to inspect, and data is your matrix. Then you can do
data = readmatrix(filename);
goodRows = logical(data(:, 2)); % Get column 2.
data = data(goodRows, :); % Take only rows where column 2 is 1.
Just basic MATLAB vectorization.

カテゴリ

ヘルプ センター および File ExchangeDates and Time についてさらに検索

タグ

質問済み:

2020 年 10 月 3 日

回答済み:

2020 年 10 月 3 日

Community Treasure Hunt

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

Start Hunting!

Translated by