7 ตัวอย่างการใช้ SymPy เพื่อเขียน Python Code ให้เหมือนนักคณิตศาสตร์

18-ต.ค.-23

คัมภีร์เทพ IT

ปัญหาทางคณิตศาสตร์เป็นสิ่งที่หลีกเลี่ยงไม่ได้สำหรับ Data Scientists และคงไม่ง่ายที่คุณจะทำเองทั้งหมด แต่จะดีกว่าไหมหากเรามี Tool ที่ช่วยแก้ปัญหาทางคณิตศาสตร์ได้ ซึ่ง Tool ที่ว่านี้ก็คือ “SymPy” และในบทความนี้จะกล่าวถึง 7 ตัวอย่างการใช้ SymPy เพื่อเขียน Python Code ให้เหมือนนักคณิตศาสตร์

1. การแยกตัวประกอบ

ก่อนอื่น เราต้องกำหนดตัวแปรให้เป็น Symbol ของ sympy มันจะทำให้ตัวแปรสามารถนำไปใช้กับ Algebra Methods ของ sympy ได้

หลังจากกำหนด “Symbols” แล้ว เราก็จะสามารถได้ตัวประกอบของนิพจน์ได้อย่างง่ายดาย ด้วยความช่วยเหลือของ factor() Function:

นอกจากนี้ ยังมีอีกวิธีที่สะดวกในการกำหนด Symbols หลายตัวได้ในคราวเดียว:

2. การกระจายตัวประกอบ

การกระจายตัวประกอบนั้น ก็ง่ายพอ ๆ กับการแยกตัวประกอบ สิ่งที่เราต้องทำคือ ใช้ expand() Method ของ sympy:

3. การแก้นิพจน์

มันเป็นเรื่องปกติที่จะแก้ไขนิพจน์ใน Python ได้ แต่การใช้ประโยชน์จากความสามารถของ sympy จะทำให้คุณเขียน Code ให้เป็น Pythonic ได้มากขึ้น:

จาก Code ที่แสดงอยู่ด้านบน ทุกนิพจน์ (ตราบใดที่ตัวแปรของมันคือ “Symbols”) สามารถแก้ไขได้ด้วย subs Method

4. การคำนวณนิพจน์

นอกจากนี้ หากคุณมีหลาย ๆ นิพจน์ และต้องการคำนวณพวกมันโดยใช้ sympy Module โปรแกรมก็จะดำเนินการแบบตรงไปตรงมาเหมือนกับการคำนวณทางคณิตศาสตร์ง่าย ๆ เช่น การบวก การลบ การคูณ และการหาร:

5. การแก้สมการ

การแก้สมการถือเป็นเรื่องที่น่าท้าทายหากคุณใช้เครื่องคิดเลขพื้นฐานทั่วไป แต่ในกรณีนี้ การใช้ sympy Module นับเป็นทางเลือกทั่วไปที่ Python Developers สามารถนำไปใช้ได้:

ส่วนการแก้ระบบสมการที่มี 2 ตัวแปรนั้น ก็สามารถทำได้ในทำนองเดียวกัน:

6. การจัดการฟังก์ชันตรีโกณมิติ

หากคุณคิดว่าสถานการณ์ก่อนหน้านี้ ยังไม่ยากมากนัก และคุณยังสามารถแก้ไขปัญหาได้โดยที่ไม่ต้องใช้ sympy Module แต่การคำนวณตรีโกณมิติ อาจจะทำให้คุณเปลี่ยนใจได้

การคำนวณฟังก์ชันตรีโกณมิติพื้นฐานนั้น ก็ง่ายพอ ๆ กับการแก้นิพจน์อื่น ๆ เนื่องจากฟังก์ชันตรีโกณมิติทั่วไป มีอยู่ใน sympy Module อยู่แล้ว:

เรายังสามารถ ทำให้นิพจน์ตรีโกณมิติซึ่งเป็นการบ้านที่ยาก ๆ ของเด็กมัธยมต้นนั้น มีความซับซ้อนน้อยลงได้:

สิ่งนี้เพียงพอที่จะช่วยลูก ๆ ของคุณทำการบ้านคณิตศาสตร์หรือไม่? แต่ก่อนอื่นคือ ให้พวกเขาเรียนรู้ Python เสียก่อน

7. การ Plat ฟังก์ชันกราฟ

นอกเหนือจากความสามารถในการคำนวณแล้ว sympy Tool ยังสามารถวาดฟังก์ชันกราฟได้โดยตรงอีกด้วย

จะเห็นว่า เราใช้ plot Method จาก sympy.plotting ในตัวอย่างข้างบนนี้ โดยจะแสดงกราฟบน Terminal ของเรา:

ผลลัพธ์ของกราฟที่สร้างโดย “sympy” module

แต่เราควรรู้ไว้ด้วยว่า ความสามารถในการ Plot ของ sympy นั้น เป็นอะไรที่ค่อนข้างจะพื้นฐานเมื่อเปรียบเทียบกับ Plotting Libraries โดยเฉพาะ อย่างเช่น matplotlib หรือ seaborn ดังนั้น หากเราต้องการที่จะ Customize ให้ Advance มากขึ้น หรือทำการ Plot ที่หลากหลายมากขึ้น เราก็อาจจำเป็นต้องใช้ Libraries เหล่านั้นโดยตรง

ที่มา: https://medium.com/techtofreedom/

 

 

รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

เพิ่มเพื่อน

 

บทความล่าสุด