how to remove variables of a table with a zeros in it

2 次查看(过去 30 天)
I have a table where few variables contain zeros as well as non zero values in it. I want to remove the variables with even a single zero in it. can anyone help me with that?
  2 个评论
the cyclist
the cyclist 2024-5-26
I realized that there is a nuance here, that I did not consider in my solution.
Is there any chance that any of your variables are logical (i.e. true/false)? If so, do you want to remove that variable if "false" appears? (Both my and @Matt J's solutions will remove a column with "false" in it.)
priyam kar
priyam kar 2024-5-27
The table conatains only numeric values and your solution woked perfectly. Thank you very much.

请先登录,再进行评论。

采纳的回答

the cyclist
the cyclist 2024-5-26
% Example data
x = ["a";"b";"c"];
y = [4;5;6];
z = [0;7;8];
tbl = table(x,y,z);
% Find variables with a zero
hasZero = any(ismissing(tbl,0));
% Make a new table without those variables
tbl2 = tbl(:,not(hasZero))
tbl2 = 3x2 table
x y ___ _ "a" 4 "b" 5 "c" 6

更多回答(1 个)

Matt J
Matt J 2024-5-26
编辑:Matt J 2024-5-26
keep=all(yourTable{:,:},1);
yourTable=yourTable(:,keep);

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

产品


版本

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by