采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
def split(X, y, d, value): index_a = (X[:,d] <= value) index_b = (X[:,d] > value)
这个X[:,d] <= value 返回的是bool值,为啥会是索引呢,没理解。
这叫 fancy indexing,课程中有介绍,但是如果不做这种实践,确实很容易忽略。
实际上和这个问题本质是一样的,看是否能够理解?https://coding.imooc.com/learn/questiondetail/5Ggzqw6jJa86DxW0.html
核心:X[:,d] <= value 或者 X[:,d] > value 返回的是一个布尔向量(而不是一个值)。(类比上面问题中的 y == 0)如果对此有疑问,也请再复习一下 fancy indexing 对应的小节内容:https://coding.imooc.com/lesson/169.html#mid=9836
继续加油!:)
谢谢波波老师!
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.6k 19
3.5k 17
3.0k 15
1.7k 15
1.5k 14