请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

有关patition的问题?

老师你在讲np.patition时第一参数为数组,第二参数为要分小于和大于的值,但是我在练习过程中发现是,第二值为

要比较的值的索引

https://img1.sycdn.imooc.com//szimg/5aaf17d20001179108680587.jpg


但是还是感觉那里不对?

正在回答

1回答

liuyubobobo 2018-03-19 16:42:49

感谢你的问题,我查了一下文档,这里确实是我讲错了。由于我举的例子中元素和索引一致,所以没有展现出这个问题:(


partition的第二参数kth,是指以整个数组中第k个元素(k为索引,从0开始)作为标定点。对于你贴图的例子,你可以尝试将整个x排序,之后就会发现x[5] == 23。所以你运行np.partition(x, 5)以后,x[5]也是23,其实是以这个23作为标定点:23前面的数字都小于23;23后面的数字都大于23。


具体numpy.partition的文档参见这里:https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.partition.html

其中kth这个参数的解释文档中有详细说明:)


你发现了我的课程中的一个bug,如果愿意,可以加我的微信:liuyubobobo,我会给你发一个小红包:)


再次致歉,表示感谢!:)

4 回复 有任何疑惑可以回复我~
  • 提问者 慕斯卡8323326 #1
    谢谢波波老师!
    回复 有任何疑惑可以回复我~ 2018-03-19 17:22:56
  • 老师我想问一下,既然23才是标定点,那为什么43行输出里,两个23之间有16和7呢
    回复 有任何疑惑可以回复我~ 2020-07-03 00:19:33
  • liuyubobobo 回复 _Prairie #3
    第二个 23 才是真正的标定点。
    回复 有任何疑惑可以回复我~ 2020-07-03 05:21:44

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信