Разве не должно быть постоянного наклона, где следующий элемент ВСЕГДА будет выше, чем предыдущий элемент?
Да, подгонка - прямая линия, поэтому более высокие значенияx
всегда связаны с более высокими (или более низкими, в зависимости от наклона) значениями p(x)
.
В вашем случае происходит то, что x
не сортируется, и поэтому p(x)
isn 'Сортировка также возможна.
In [18]: x
Out[18]:
array([ 9.95692606, 5.25372625, 9.84277793, 9.75691888,
3.53691402, 7.47732635, 13.26638669, 10.39011192,
11.86590794, 10.38592445, 0.5328471 , 7.69932299,
...
Как видите, мы не начинаем слева и движемся вправо.Сначала мы смотрим на какую-то точку посередине, затем много прыгаем влево, затем прыгаем вправо, затем немного смещаемся влево и т. Д. Соответствующие значения p(x)
также не будут монотонными.
Если вы отсортируете точки слева направо, вы увидите, что они действительно всегда движутся в одном и том же вертикальном направлении:
In [20]: sorted(zip(x, p(x)))
Out[20]:
[(0.53284710066507301, 5.2982022878459842),
(0.90494271648495472, 5.3490731826338447),
(1.2383322417505211, 5.3946523906172272),
(1.2542322226117251, 5.3968261497778585),
(1.3243912128123114, 5.4064179064586044),
(1.4506628234207115, 5.4236810763129437),
(2.0368566039434102, 5.503822311163459),
(2.8349103207704576, 5.6129278876274968),
(3.0174136939304748, 5.637878759123244),
(3.5369140229038196, 5.7089020269444219),
(4.932863919562303, 5.8997487268324766),
(4.943993127936622, 5.9012702518497351),
(4.9500689452818589, 5.9021009046491208),
...