gpt4 book ai didi

matlab - 当 Matlab 中出现第一个负值时,将所有矢量值设置为零

转载 作者:行者123 更新时间:2023-12-02 05:41:57 31 4
gpt4 key购买 nike

我有一个带有随机数的向量:

x = [8,5,4,2,-1,-3,-4,2,3];

我想将所有矢量值设置为零,从第一个负值出现的那一刻起。因此我想得到以下结果:

x = [8,5,4,2,0,0,0,0,0];

我该如何实现这一目标?谢谢!

最佳答案

ind = find(x<0, 1, 'first')
x(ind:end) = 0;

或者全部放在一行

x(find(x<0, 1, 'first'):end)= 0;

另一种方式

x(cumsum(x<0)>0) = 0;

关于matlab - 当 Matlab 中出现第一个负值时,将所有矢量值设置为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26175425/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com