Tablica funkcji zwraca numpy.gradient
zależy od liczby punktów danych/odstępów punktów danych. Czy to oczekiwane zachowanie? Na przykład:funkcja numpy gradient i pochodne numeryczne
y = lambda x: x
x1 = np.arange(0,10,1)
x2 = np.arange(0,10,0.1)
x3 = np.arange(0,10,0.01)
plt.plot(x1,np.gradient(y(x1)),'r--o')
plt.plot(x2,np.gradient(y(x2)),'b--o')
plt.plot(x3,np.gradient(y(x3)),'g--o')
zwraca działkę .
Tylko gradient y (x1) zwraca poprawny wynik. Co tu się dzieje? Czy istnieje lepszy sposób obliczania pochodnej numerycznej za pomocą numpy?
Cheers
Awesome, thank you pabaldonedo. Widziałem to w instrukcji, ale "odległość próbki" była dla mnie nieznaną terminologią. Ostatnie pytanie - co, jeśli odległość próbki nie jest równa? W instrukcji nie ma nic. – user1654183
Jeśli odległość nie jest równa, musisz ją obliczyć ręcznie. – pabaldonedo
@ user1654183 Edytowałem swoją odpowiedź, aby uwzględnić możliwe rozwiązanie dla przypadku, gdy odległość próbki nie jest równa. – pabaldonedo