gpt4 book ai didi

matlab - 在 MATLAB 中,每次值从 1 变为 0 时如何查找向量中的索引?

转载 作者:太空宇宙 更新时间:2023-11-03 20:09:45 24 4
gpt4 key购买 nike

我有一个由 1 和 0 组成的向量,表示何时出现间歇性数据信号。例如:

    V = [0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,0,1,1,1,1,1,1,1,0,0,0];

如何找到从 1 到 0 的每次变化的索引值?所以对于上面的向量 V,答案是:

    idx = [10,18,28];

最佳答案

快速简单:

idx=find(diff(V)<0)+1;

计算导数,只得到负值(从 1 到 0 是 -1)并找到位置。由于导数从第二个位置开始,我们需要加1

但是,请注意,如果您想要访问这些位置上的数据,最好直接使用逻辑索引,如:

somevals=my_other_data([false;diff(V)<0]);

阅读有关通用变量索引的更多信息 here

关于matlab - 在 MATLAB 中,每次值从 1 变为 0 时如何查找向量中的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51744176/

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