我所拥有的是一个大块头的一维模型np.int16包含数据的数组和一个布尔数组,它存储数据的特定样本(长度为samplesize
)是否符合某些条件(有效)或不符合(无效)的信息。
我是说我有这样的东西:
samplesize = 5
data = array([1, 2, 3, 4, 5, 3, 2, 1, 3, 2, 4, 5, 2, 1, 1], dtype=int16)
membership = array([False, True, False], dtype=bool)
这里membership[0]
标识{
我想要的是根据成员数组中True
值的序列将数据数组分成块。例如,如果membership
包含三个或更多个连续True
语句,则作出判定,它是data
的有意义样本。在
示例
^{pr2}$假设我们已经将i
-第个有效序列的开始标识为start[i]
,而这样一个序列的结尾是end[i]
,我想把data
数组分成从start[i] * samplesize
开始,最后到end[i] * samplesize
的片段。在
我怎么能做到这一点?在
我不明白你的问题。您想用3个或更多连续的True获取
membership
的起始和结束索引吗?在下面是执行此操作的代码,基本思想是
diff(membership)
,并得到上升沿和下降沿的索引:相关问题 更多 >
编程相关推荐