Hướng dẫn linear interpolation in python - nội suy tuyến tính trong python

Nội suy tuyến tính là kỹ thuật xác định các giá trị của các hàm của bất kỳ điểm trung gian nào khi các giá trị của hai điểm liền kề được biết đến. Nội suy tuyến tính về cơ bản là ước tính của một giá trị chưa biết nằm trong hai giá trị đã biết. Nội suy tuyến tính được sử dụng trong các ngành khác nhau như thống kê, kinh tế, xác định giá, v.v ... Nó được sử dụng để lấp đầy khoảng trống trong dữ liệu thống kê để liên tục thông tin. & NBSP;

Nội phân chính

  • Làm thế nào để bạn thực hiện nội suy trong Python?
  • Làm thế nào để bạn thực hiện nội suy tuyến tính?
  • Làm thế nào để bạn nội suy trong Pandas Python?
  • Ý nghĩa của phép nội suy trong Python là gì?

Bằng cách sử dụng công thức sau, chúng ta có thể nội suy tuyến tính điểm dữ liệu đã cho & nbsp;

Ở đây (x1, y1) là tọa độ của điểm dữ liệu đầu tiên. Và (x2, y2) là tọa độ của điểm dữ liệu thứ hai, trong đó x là điểm mà chúng tôi thực hiện nội suy và y là giá trị nội suy.(x1, y1) are the coordinates of the first data point. And (x2,y2) are coordinates of the second data point, where x is the point on which we perform interpolation and y is the interpolated value.

Vấn đề ví dụ:

Hãy để một ví dụ để hiểu rõ hơn. Chúng ta có các giá trị dữ liệu sau trong đó x biểu thị số và y là hàm của căn bậc hai của x. Nhiệm vụ của chúng tôi là tìm căn bậc hai của 5.5 (x).5.5 (x).

x

1

2

3

4

5

6

y (f (x) = x) & nbsp;

1

1.4142

1.7320

2

2.2360

2.4494

Chúng ta có thể sử dụng phương pháp nội suy tuyến tính ở đây.

1. Tìm hai liền kề & nbsp; (x1, y1), (x2, y2) từ x. tức là (5,2.2360) và (6.2.4494).

Trong đó x1 = 5, x2 = 6, y1 = 2.2360, y2 = 2.4494 và chúng tôi nội suy tại điểm x = 5.5.

2. Sử dụng công thức y (x) & nbsp; = & nbsp; y1 & nbsp;+ & nbsp; (x - x1) & nbsp;

3. Sau khi đặt các giá trị vào phương trình trên. & NBSP;

y = 2.3427

Tại x = 5,5, giá trị của y sẽ là 2.3427. Vì vậy, bằng cách sử dụng phép nội suy tuyến tính, chúng ta có thể dễ dàng xác định giá trị của hàm giữa hai khoảng.2.3427. So by using linear interpolation we can easily determine the value of a function between two intervals.

Tiếp cận 1:

Sử dụng công thức & nbsp;

Ví dụ: Giả sử chúng ta có một bộ dữ liệu về dân số của một thành phố và năm.Suppose we have a dataset of the population of a city and the year.

X(Year)

2016

2017

2018

2019

2021

Y(Population)

10001

12345

74851

12124

5700

Ở đây, x là năm và y là dân số ở bất kỳ thành phố nào. Nhiệm vụ của chúng tôi là tìm thấy dân số của thành phố vào năm 2020.2020.

Chúng tôi chọn (x1, y1), (x2, y2) của chúng tôi là x1 = 2019, y1 = 12124, x2 = 2021, & nbsp; y2 = 5700, x = 2020, y =?

Ở đây (x1, y1) và (x2, y2) là hai điểm liền kề và x là năm mà chúng tôi muốn dự đoán giá trị của dân số Y.

Python3

def interpolation(d, x):

    ____ ____.

    interpolation(d, x):6 interpolation(d, x):7

interpolation(d, x):8=    0    1    2    3    4    5    2    7    8

    9=output 1

Các

output 8output 9

Đầu ra

Population on year 2020 is 8912.0

Tiếp cận 2:

Sử dụng scipy.Interpolate.Interp1d

Tương tự, chúng ta có thể đạt được phép nội suy tuyến tính bằng cách sử dụng chức năng thư viện SCIPY gọi là Interpolate.Interp1d.interpolate.interp1d.

Cú pháp: scipy.Interpolate.Interp1d (x, y, kint = hồi tuyến tính, trục =- 1, sao chép = true, bound_error = none : scipy.interpolate.interp1d(x, y, kind=’linear’, axis=- 1, copy=True, bounds_error=None, fill_value=nan, assume_sorted=False)

Sr. không. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Tham số & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;

Sự mô tả

1.

x

y (f (x) = x) & nbsp;

2.

Chúng ta có thể sử dụng phương pháp nội suy tuyến tính ở đây.

1. Tìm hai liền kề & nbsp; (x1, y1), (x2, y2) từ x. tức là (5,2.2360) và (6.2.4494).

3.

Trong đó x1 = 5, x2 = 6, y1 = 2.2360, y2 = 2.4494 và chúng tôi nội suy tại điểm x = 5.5.

2. Sử dụng công thức y (x) & nbsp; = & nbsp; y1 & nbsp;+ & nbsp; (x - x1) & nbsp;linear.

4.

3. Sau khi đặt các giá trị vào phương trình trên. & NBSP;

Tại x = 5,5, giá trị của y sẽ là 2.3427. Vì vậy, bằng cách sử dụng phép nội suy tuyến tính, chúng ta có thể dễ dàng xác định giá trị của hàm giữa hai khoảng.

5.

Tiếp cận 1:

Sử dụng công thức & nbsp;

6.

bounds_error

Ví dụ: Giả sử chúng ta có một bộ dữ liệu về dân số của một thành phố và năm.

Example:

Ở đây, x là năm và y là dân số ở bất kỳ thành phố nào. Nhiệm vụ của chúng tôi là tìm thấy dân số của thành phố vào năm 2020.

Chúng tôi chọn (x1, y1), (x2, y2) của chúng tôi là x1 = 2019, y1 = 12124, x2 = 2021, & nbsp; y2 = 5700, x = 2020, y =?

Python3

Ở đây (x1, y1) và (x2, y2) là hai điểm liền kề và x là năm mà chúng tôi muốn dự đoán giá trị của dân số Y.

def interpolation(d, x):

    ____ ____.

    interpolation(d, x):6 interpolation(d, x):7

Các

output 2output 3

Population on year 2020 is 8912.0
09output 5output 6
Population on year 2020 is 8912.0
12

Population on year 2020 is 8912.0
13
Population on year 2020 is 8912.0
14

Đầu ra

Value of y at x = 2.5 is 2.85
Bạn làm nội suy trong Python?

How do you do interpolation in Python?

Gói nội suy ...

Nhập NUMPY dưới dạng NP từ nhập khẩu SCIPY Nhập khẩu Matplotlib. pyplot như plt x = np. không gian linsp (0, 4, 12) y = np. ....

xnew = np. không gian linsp (0, 4,30) plt. Lô đất (x, y, 'o', xnew, f (xnew), '-', xnew, f2 (xnew), '-') plt. ....

Nhập matplotlib. pyplot như plt từ scipy ..

Làm thế nào để bạn thực hiện nội suy tuyến tính?

Biết công thức cho quá trình nội suy tuyến tính. Công thức là y = y1 + ((x - x1) / (x2 - x1)) * (y2 - y1), trong đó x là giá trị đã biết, y là giá trị chưa biết, x1 và y1 là các tọa độ nằm dưới mức dưới Giá trị x đã biết và X2 và Y2 là các tọa độ cao hơn giá trị X.y = y1 + ((x – x1) / (x2 – x1)) * (y2 – y1), where x is the known value, y is the unknown value, x1 and y1 are the coordinates that are below the known x value, and x2 and y2 are the coordinates that are above the x value.

Làm thế nào để bạn nội suy trong Pandas Python?

Ví dụ #1: Sử dụng hàm Interpolate () để điền các giá trị bị thiếu bằng phương thức tuyến tính ..

Đầu ra:.

Ví dụ #2: Sử dụng hàm nội suy () để nội suy các giá trị bị thiếu theo hướng ngược bằng phương pháp tuyến tính và đặt giới hạn về số lượng tối đa các giá trị NA liên tiếp có thể được điền ..

Đầu ra:.

Ví dụ #2: Sử dụng hàm nội suy () để nội suy các giá trị bị thiếu theo hướng ngược bằng phương pháp tuyến tính và đặt giới hạn về số lượng tối đa các giá trị NA liên tiếp có thể được điền ..

Ý nghĩa của phép nội suy trong Python là gì?a method for generating points between given points. For example: for points 1 and 2, we may interpolate and find points 1.33 and 1.66. Interpolation has many usage, in Machine Learning we often deal with missing data in a dataset, interpolation is often used to substitute those values.