我有一个5000x6维的MATLAB表。我想添加一个新的列到MATLAB表基于某些条件的第6列在原表。
如果第6列值小于x或大于y:将1附加到MATLAB表2的新第7列。否则,将0附加到MATLAB表的新第7列。
最后,我将得到一个5000x7表,其中最后一列(第7列)是根据原始(第6)列中的值由0和1s组成的。我刚开始使用MATLAB中的表和迭代,我试着看了关于Stackoverflow的其他问题,但是不知道我是如何做到这一点的。在这方面的任何帮助都将受到高度赞赏。谢谢!
发布于 2018-09-28 04:45:37
在下面的文章中,我设想您已经从数据矩阵中提取了第六列。我称它为A,然后定义逻辑索引的上、下界。
然后,通过根据边界检查向量中的每个元素来创建新列,最后将其添加到矩阵中。
% Sixth column
A = [1; 2; 3; 4; 5; 3; 1; 2; 8];
y= 4; % Upper boundary
x= 2; % Lower boundary
% Create logical column vector by information of sixth column
new_column = (A<x) | (A>y);
% Add new column to Matrix
A = [A new_column];
我刚刚为你的向量建立了一些随机的界和值。
https://stackoverflow.com/questions/52554682
复制