从 Octave 中的条件逻辑添加新列

Add new column from conditional logic in Octave

假设我有这个向量(或矩阵)

 a = [1; 2; 3]

它是一个 3x1

1

2

3

如何根据条件逻辑添加另一列?

假设我希望第二列为 1 或 0,具体取决于第一列是否 >= 2

什么矢量化代码会有条件地创建和连接来创建这个?

1 0

2 1

3 1

我更了解 R,有了 data.table 我可以做类似于

的事情

数据[col1 >= 2, 第二列 := 1, ]

您可以使用 [] 隐式水平连接两个

b = [a, a >= 2];            % Implicit horizontal concatenation

或者您可以使用 horzcatcat 来完成同样的事情

b = horzcat(a, a >= 2);     % Horizontal contatenation
b = cat(2, a, a >= 2);      % Concatenate along the second dimension