Compare two row and select appropriate data
42 次查看(过去 30 天)
显示 更早的评论
I have two columns. Let's call them column a and column b.
I want to do a check where:
if row 1 of column a > row 1 of column b, use row 1 of column a. Else, use row 1 of column b.
I have tried
if Column a > Column b
Column c = column b
else
Column c = column a
end
However, when I check the data, I find out some of the function isn't working and it just pulls all the data from column a into column c.
Basically column b is the "cap." And no number in column c should be greater than that. If any numbers in column a is greater than column b, column b should be used.
0 个评论
采纳的回答
更多回答(3 个)
Matt J
2025-9-10
编辑:Matt J
2025-9-10
Basically column b is the "cap."
If so, one could also do,
a=[1;2;3;4]; b=[1;1;3;3];
c=clip(a,-inf,b)
Star Strider
2025-9-10
I believe you want the minimum of the two columns.
Try this --
Data = array2table(randi(9, 10, 2), VariableNames=["A","B"])
[C,idx] = min([Data.A, Data.B],[],2);
Data.C = C
OriginalColumn = idx
The 'idx' output is the column chosen to be Column 'C'.
.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!