You have four options

- Finite Differences
- Automatic Derivatives
- Symbolic Differentiation
- Compute derivatives by hand.

Finite differences require no external tools but are prone to numerical error and, if you're in a multivariate situation, can take a while.

Symbolic differentiation is ideal if your problem is simple enough. Symbolic methods are getting quite robust these days. SymPy is an excellent project for this that integrates well with NumPy. Look at the autowrap or lambdify functions or check out Jensen's blogpost about a similar question.

Automatic derivatives are very cool, aren't prone to numeric errors, but do require some additional libraries (google for this, there are a few good options). This is the most robust but also the most sophisticated/difficult to set up choice. If you're fine restricting yourself to `numpy`

syntax then Theano might be a good choice.

Here is an example using SymPy

```
In [1]: from sympy import *
In [2]: import numpy as np
In [3]: x = Symbol('x')
In [4]: y = x**2 + 1
In [5]: yprime = y.diff(x)
In [6]: yprime
Out[6]: 2·x
In [7]: f = lambdify(x, yprime, 'numpy')
In [8]: f(np.ones(5))
Out[8]: [ 2. 2. 2. 2. 2.]
```

- programming a servo thru a barometer
- Is there a way to view two blocks of code from the same file simultaneously in Sublime Text?
- python variable NameError
- Why my regexp for hyphenated words doesn't work?
- Comparing a variable with a string python not working when redirecting from bash script
- is it possible to add colors to python output?
- Get Public URL for File - Google Cloud Storage - App Engine (Python)
- Real time face detection OpenCV, Python
- xlrd.biffh.XLRDError: Excel xlsx file; not supported
- Could not load dynamic library 'cudart64_101.dll' on tensorflow CPU-only installation
- Upgrade to python 3.8 using conda
- Unable to allocate array with shape and data type
- How to fix error "ERROR: Command errored out with exit status 1: python." when trying to install django-heroku using pip
- How to prevent Google Colab from disconnecting?
- "UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure." when plotting figure with pyplot on Pycharm
- How to fix 'Object arrays cannot be loaded when allow_pickle=False' for imdb.load_data() function?
- "E: Unable to locate package python-pip" on Ubuntu 18.04
- Tensorflow 2.0 - AttributeError: module 'tensorflow' has no attribute 'Session'
- Jupyter Notebook not saving: '_xsrf' argument missing from post
- How to Install pip for python 3.7 on Ubuntu 18?
- Python: 'ModuleNotFoundError' when trying to import module from imported package
- OpenCV TypeError: Expected cv::UMat for argument 'src' - What is this?
- Requests (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.") Error in PyCharm requesting website
- How to setup virtual environment for Python in VS Code?
- Pylint "unresolved import" error in Visual Studio Code
- Pandas Merging 101
- Numpy, multiply array with scalar
- What is the meaning of "Failed building wheel for X" in pip install?
- Selenium: WebDriverException:Chrome failed to start: crashed as google-chrome is no longer running so ChromeDriver is assuming that Chrome has crashed
- Could not install packages due to an EnvironmentError: [Errno 13]
- OpenCV !_src.empty() in function 'cvtColor' error
- ConvergenceWarning: Liblinear failed to converge, increase the number of iterations
- How to downgrade python from 3.7 to 3.6
- I can't install pyaudio on Windows? How to solve "error: Microsoft Visual C++ 14.0 is required."?
- Iterating over arrays in Python 3
- How do I install opencv using pip?
- How do I install Python packages in Google's Colab?
- How do I use TensorFlow GPU?
- How to upgrade Python version to 3.7?
- How to resolve TypeError: can only concatenate str (not "int") to str
- How can I install a previous version of Python 3 in macOS using homebrew?
- Flask at first run: Do not use the development server in a production environment
- TypeError: only integer scalar arrays can be converted to a scalar index with 1D numpy indices array
- What is the difference between Jupyter Notebook and JupyterLab?
- Pytesseract : "TesseractNotFound Error: tesseract is not installed or it's not in your path", how do I fix this?
- Could not install packages due to a "Environment error :[error 13]: permission denied : 'usr/local/bin/f2py'"
- How do I resolve a TesseractNotFoundError?
- Trying to merge 2 dataframes but get ValueError
- Authentication plugin 'caching_sha2_password' is not supported
- Python Pandas User Warning: Sorting because non-concatenation axis is not aligned
- [Move to How do I compute derivative using Numpy?]

- How to do perspective fixing?
- How to pad a string with leading zeros in Python 3
- How can I use "e" (Euler's number) and power operation in python 2.7
- numpy max vs amax vs maximum
- Efficiently getting all divisors of a given number
- Using atan2 to find angle between two vectors
- How to calculate percentage when old value is ZERO
- Finding square root without using sqrt function?
- Exponentiation in Python - should I prefer ** operator instead of math.pow and math.sqrt?
- How do I get the total number of unique pairs of a set in the database?
- To the power of in C?
- JavaScript math, round to two decimal places
- Rounding BigDecimal to *always* have two decimal places
- What do these operators mean (** , ^ , %, //)?
- Rotating a Vector in 3D Space
- finding multiples of a number in Python
- What does the ^ (XOR) operator do?
- I want to calculate the distance between two points in Java
- How do I determine whether my calculation of pi is accurate?
- What's the difference between “mod” and “remainder”?
- How to make rounded percentages add up to 100%
- Round float to x decimals?
- Calculating distance between two points (Latitude, Longitude)
- Creating all possible k combinations of n items in C++
- Float sum with javascript
- How to find prime numbers between 0 - 100?
- Divide a number by 3 without using *, /, +, -, % operators
- How to test if a double is an integer
- Java, How to specify absolute value and square roots
- How do I compute derivative using Numpy?
- How can I convert radians to degrees with Python?
- How to find the Center Coordinate of Rectangle?
- How can I get sin, cos, and tan to use degrees instead of radians?
- Math operations from string
- Evenly distributing n points on a sphere
- How do I calculate square root in Python?
- Why is the Fibonacci series used in agile planning poker?
- Python Math - TypeError: 'NoneType' object is not subscriptable
- C: how to break apart a multi digit number into separate variables?
- What's the best practice to round a float to 2 decimals?
- Python math module
- Why do Python's math.ceil() and math.floor() operations return floats instead of integers?
- Make a number a percentage
- less than 10 add 0 to number
- Show a leading zero if a number is less than 10
- Calculating powers of integers
- How do you calculate the variance, median, and standard deviation in C++ or Java?
- Math.random() explanation
- Java math function to convert positive int to negative and negative to positive?
- milliseconds to days
- [Move to How do I compute derivative using Numpy?]

- Unable to allocate array with shape and data type
- How to fix 'Object arrays cannot be loaded when allow_pickle=False' for imdb.load_data() function?
- Numpy, multiply array with scalar
- TypeError: only integer scalar arrays can be converted to a scalar index with 1D numpy indices array
- Could not install packages due to a "Environment error :[error 13]: permission denied : 'usr/local/bin/f2py'"
- Pytorch tensor to numpy array
- Numpy Resize/Rescale Image
- what does numpy ndarray shape do?
- How to round a numpy array?
- numpy array TypeError: only integer scalar arrays can be converted to a scalar index
- Convert np.array of type float64 to type uint8 scaling values
- How to import cv2 in python3?
- How to calculate 1st and 3rd quartiles?
- Counting unique values in a column in pandas dataframe like in Qlik?
- Binning column with python pandas
- convert array into DataFrame in Python
- How to change a single value in a NumPy array?
- 'DataFrame' object has no attribute 'sort'
- ValueError: could not broadcast input array from shape (224,224,3) into shape (224,224)
- Pytorch reshape tensor dimension
- Python "TypeError: unhashable type: 'slice'" for encoding categorical data
- len() of a numpy array in python
- ValueError: cannot reshape array of size 30470400 into shape (50,1104,104)
- Python - AttributeError: 'numpy.ndarray' object has no attribute 'append'
- How to plot vectors in python using matplotlib
- How to plot an array in python?
- TypeError: 'DataFrame' object is not callable
- LogisticRegression: Unknown label type: 'continuous' using sklearn in python
- Python Pandas - Missing required dependencies ['numpy'] 1
- Pandas Split Dataframe into two Dataframes at a specific row
- What does 'index 0 is out of bounds for axis 0 with size 0' mean?
- What is the difference between i = i + 1 and i += 1 in a 'for' loop?
- Get index of a row of a pandas dataframe as an integer
- FutureWarning: elementwise comparison failed; returning scalar, but in the future will perform elementwise comparison
- TensorFlow ValueError: Cannot feed value of shape (64, 64, 3) for Tensor u'Placeholder:0', which has shape '(?, 64, 64, 3)'
- How to get element-wise matrix multiplication (Hadamard product) in numpy?
- Showing ValueError: shapes (1,3) and (1,3) not aligned: 3 (dim 1) != 1 (dim 0)
- Pandas: convert dtype 'object' to int
- ValueError: all the input arrays must have same number of dimensions
- Numpy: Checking if a value is NaT
- How to split data into 3 sets (train, validation and test)?
- Pandas: Subtracting two date columns and the result being an integer
- How to get the indices list of all NaN value in numpy array?
- What is dtype('O'), in pandas?
- ImportError: cannot import name NUMPY_MKL
- why numpy.ndarray is object is not callable in my simple for python loop
- How to convert numpy arrays to standard TensorFlow format?
- ValueError when checking if variable is None or numpy.array
- TypeError: only length-1 arrays can be converted to Python scalars while plot showing
- TypeError: Invalid dimensions for image data when plotting array with imshow()
- [Move to How do I compute derivative using Numpy?]