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 เป็นเพื่อนนะคะ
บทความล่าสุด