Python列表表示法,Numpy数组表示法:预测[predictions<1e10]=1e10

2024-03-28 14:02:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我在查名单上申请的手术。我有列表/数组名预测和执行以下指令集。在

predictions[predictions < 1e-10] = 1e-10

这个代码片段来自一个使用Numpy的Udacity机器学习作业。在

其使用方式如下:

^{pr2}$

正如@MosesKoledoye和其他人指出的,它实际上是一个Numpy数组。(Numpy是一个Python库)

这条线是干什么的?在


Tags: 代码numpy机器列表作业方式数组手术
2条回答

条件(element<;1e-10)为真的数组的所有元素都设置为1e-10。 实际上你是在设定一个最小值。在

正如@MosesKoledoye指出的,predictions很可能是numpy数组。在

然后使用predictions < 1e-10生成一个布尔数组。在由条件设置的布尔数组为True的所有索引中,该值将更改为1e-10,即10-10。在

示例:

  >>> a = np.array([1,2,3,4,5]) #define array
  >>> a < 3 #define boolean array through condition
  array([ True,  True, False, False, False], dtype=bool)

  >>> a[a<3]  #select elements using boolean array
  array([1, 2])

  >>> a[a<3] = -1  #change value of elements which fit condition
  >>> a 
  array([-1, -1,  3,  4,  5])

在代码中这样做的原因可能是为了防止被零除,或者是为了防止负数通过插入一个非常小的数字而把事情搞乱。在

相关问题 更多 >