วิธีการแก้ไขเชิงเส้นใน python (พร้อมตัวอย่าง)


การประมาณค่าเชิงเส้น เป็นกระบวนการประมาณค่าที่ไม่ทราบของฟังก์ชันระหว่างค่าที่ทราบสองค่า

เมื่อพิจารณาค่าที่ทราบสองค่า (x 1 , y 1 ) และ (x 2 , y 2 ) เราสามารถประมาณค่า y สำหรับจุด x โดยใช้สูตรต่อไปนี้:

y = y 1 + (xx 1 )(y 2 -y 1 )/(x 2 -x 1 )

เราสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อดำเนินการแก้ไขเชิงเส้นใน Python:

 import scipy. interpolate

y_interp = scipy. interpolate . interp1d (x,y)

#find y-value associated with x-value of 13
print (y_interp( 13 ))

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: การประมาณค่าเชิงเส้นใน Python

สมมติว่าเรามีรายการค่าสองรายการต่อไปนี้ใน Python:

 x = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
y = [4, 7, 11, 16, 22, 29, 38, 49, 63, 80]

เราสามารถสร้างพล็อต x กับ y ที่รวดเร็วได้:

 import matplotlib. pyplot as plt

#create plot of x vs. y
plt. plot (x, y, ' -ob ')

ตอนนี้ สมมติว่าเราต้องการค้นหาค่า y ที่เกี่ยวข้องกับค่า x ใหม่เป็น 13

เราสามารถใช้รหัสต่อไปนี้เพื่อทำสิ่งนี้:

 import scipy. interpolate
y_interp = scipy. interpolate . interp1d (x,y)

#find y-value associated with x-value of 13
print (y_interp( 13 ))

33.5

ค่า y โดยประมาณกลายเป็น 33.5

หากเราเพิ่มจุด (13, 33.5) ลงในพล็อตของเรา ดูเหมือนว่าจะเข้ากับฟังก์ชันได้ค่อนข้างดี:

 import matplotlib. pyplot as plt

#create plot of x vs. y
plt. plot (x, y, ' -ob ')

#add estimated y-value to plot
plt. plot (13, 33.5, ' ro ')

เราสามารถใช้สูตรนี้ในการประมาณค่าเชิงเส้นสำหรับค่า x ใหม่ใดๆ

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่นๆ ใน Python:

วิธีแก้ไข KeyError ใน Pandas
วิธีแก้ไข: ValueError: ไม่สามารถแปลง float NaN เป็น int
วิธีแก้ไข: ValueError: ตัวถูกดำเนินการไม่สามารถออกอากาศด้วยรูปร่างได้

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *