【发布时间】:2020-10-02 15:14:41
【问题描述】:
我有很多这种形式的一维列表:
[ 0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 9216.24,
9441.44, 9584.14]
[ 0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 0. ,
9040.62, 9320.95, 9454.16, 9564.21, 9647.48, 9694.4 , 9734.68,
9762.59, 9788.14]
我想找到第一个大于零的值,然后将所有后验值设置为零,以这种方式。
[ 0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 9216.24,
0., 0.]
[ 0. , 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. , 0. , 0. ,
9040.62, 0. , 0. , 0. , 0. , 0. , 0. ,
0. , 0.]
我很确定有一种非常 Pythonic 的方法可以做到这一点。它可以在 python 列表或 numpy 数组中。
谢谢
【问题讨论】:
-
then set all the other values to zero和posterior values to zero之间存在差异。是哪一个? -
另外,它是一个常规的二维数组吗,即所有列表都具有相同数量的元素吗?
-
它只是一个一维数组,并且是后验的。
-
我们可以假设所有列表都具有相同数量的元素吗?另外,它是一维数组还是一维列表?
-
1- 是的,2- 是一个列表,但可以作为一个 numpy 数组来解决。