Please how can I unstack a column of negative and positive values into 2 columns of positive and negative values respectively?
2 次查看(过去 30 天)
显示 更早的评论
sr=[-34;45;28;-10;-9]. s=sign(sr). I want to obtain sr1=[-34;-10;-9] and sr2=[45;28]
0 个评论
采纳的回答
dpb
2016-7-7
p=sr(sr>0); % positive only
n=sr(sr<0); % negative only, you'll have to decide where zero goes if it exists...
or,
ix=sr>0; % logical vector
p=sr(ix);
n=sr(~ix); % eliminate the test once at expense of temporary variable
更多回答(1 个)
Jan Orwat
2016-7-7
You can compare your data with zero. This will classify your data and you can use it to get what you want.
Example based on your example data:
sr = [-34;45;28;-10;-9];
positive = (sr >= 0);
sr1 = sr(~positive); % ~ in Matlab represents negation
sr2 = sr(positive);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!