Table of Contents
Linear interpolation is a method used to estimate values between two known data points. In Python, this can be achieved by using the “interp1d” function from the “scipy.interpolate” library. This function takes in the x and y values of the known data points and returns a linearly interpolated function that can be used to estimate values at any desired point within the given range. An example of performing linear interpolation in Python would be as follows:
import numpy as np
from scipy.interpolate import interp1d
x = [0, 2, 4, 6, 8] # known x values
y = [0, 4, 8, 12, 16] # known y values
f = interp1d(x, y) # creating the linearly interpolated function
print(f(5)) # estimating the value at x = 5
This would output a value of 10, which is the estimated value at x = 5 based on the given data points.
Perform Linear Interpolation in Python (With Example)
Linear interpolation is the process of estimating an unknown value of a function between two known values.
Given two known values (x1, y1) and (x2, y2), we can estimate the y-value for some point x by using the following formula:
y = y1 + (x-x1)(y2-y1)/(x2-x1)
We can use the following basic syntax to perform linear interpolation in Python:
import scipy.interpolate y_interp = scipy.interpolate.interp1d(x, y) #find y-value associated with x-value of 13 print(y_interp(13))
The following example shows how to use this syntax in practice.
Example: Linear Interpolation in Python
Suppose we have the following two lists of values in Python:
x = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] y = [4, 7, 11, 16, 22, 29, 38, 49, 63, 80]
We can create a quick plot x vs. y:
import matplotlib.pyplotas plt
#create plot of x vs. y
plt.plot(x, y, '-ob')

Now suppose that we’d like to find the y-value associated with a new x-value of 13.
We can use the following code to do so:
import scipy.interpolate
y_interp = scipy.interpolate.interp1d(x, y)
#find y-value associated with x-value of 13 print(y_interp(13))
33.5The estimated y-value turns out to be 33.5.
If we add the point (13, 33.5) to our plot, it appears to match the function quite well:
import matplotlib.pyplotas plt
#create plot of x vs. y
plt.plot(x, y, '-ob')
#add estimated y-value to plot
plt.plot(13, 33.5, 'ro')

We can use this exact formula to perform linear interpolation for any new x-value.
Additional Resources
The following tutorials explain how to fix other common errors in Python:
Cite this article
stats writer (2024). How do you perform linear interpolation in Python? Can you provide an example?. PSYCHOLOGICAL SCALES. Retrieved from https://scales.arabpsychology.com/stats/how-do-you-perform-linear-interpolation-in-python-can-you-provide-an-example/
stats writer. "How do you perform linear interpolation in Python? Can you provide an example?." PSYCHOLOGICAL SCALES, 2 Jul. 2024, https://scales.arabpsychology.com/stats/how-do-you-perform-linear-interpolation-in-python-can-you-provide-an-example/.
stats writer. "How do you perform linear interpolation in Python? Can you provide an example?." PSYCHOLOGICAL SCALES, 2024. https://scales.arabpsychology.com/stats/how-do-you-perform-linear-interpolation-in-python-can-you-provide-an-example/.
stats writer (2024) 'How do you perform linear interpolation in Python? Can you provide an example?', PSYCHOLOGICAL SCALES. Available at: https://scales.arabpsychology.com/stats/how-do-you-perform-linear-interpolation-in-python-can-you-provide-an-example/.
[1] stats writer, "How do you perform linear interpolation in Python? Can you provide an example?," PSYCHOLOGICAL SCALES, vol. X, no. Y, ص Z-Z, July, 2024.
stats writer. How do you perform linear interpolation in Python? Can you provide an example?. PSYCHOLOGICAL SCALES. 2024;vol(issue):pages.
