Python Tools สำหรับ Data Scientist มือใหม่
11-ธ.ค.-19
คัมภีร์เทพ IT
Python มี Tools ต่าง ๆ ให้คุณได้เลือกใช้ในทุก Stages ของ Life Cycle ของ Data Science Project ซึ่งทุก Project ของ Data Science จะประกอบไปด้วย Stage ต่าง ๆ คือ Data Collection, Data Modelling และ Data Visualization ซึ่งในบทความนี้เรามาดูกันว่า Python Tools สำหรับ Data Scientist มือใหม่ ที่ครอบคลุมในทุก Stage มีอะไรกันบ้าง
Data Collection
เมื่อ Data Collection เกี่ยวข้องกับการคัดลอกข้อมูล (Data Scraping) ออกจาก Web ดังนั้น Python จึงได้เตรียมที่เรียกว่า Beautiful Soup ไว้ให้ใช้งาน
Library นี้ทำการแยกวิเคราะห์ Web Page และจัดเก็บ Content เป็นอย่างดี ตัวอย่างเช่น มันจะเก็บ Title แยกออกมา นอกจากนี้ยังจะจัดเก็บ <a> Tags ทั้งหมดแยกออกมาต่างหาก ซึ่งจะช่วยให้คุณมี List ของ URLs ทั้งหมดของแต่ละ Page อีกด้วย
จากตัวอย่างด้านล่างนี้ ให้เราดู Web Page ง่าย ๆ สำหรับเรื่องราวของการผจญภัยของอลิซในแดนมหัศจรรย์ (Alice’s Adventure in Wonderland)
เห็นได้ชัดว่า เราสามารถเห็นส่วนหนึ่งของ HTML Elements ซึ่งเราสามารถ Scrape ออกมาได้
- Heading - เรื่องราวของ Dormouse
- Page Text
- Hyperlinks - Elsie, Lacie และ Tillie
Soup ทำให้ง่ายต่อการ Extract ข้อมูลเหล่านี้ออกมา
สำหรับการดึงข้อมูลออกจาก HTML File และ XML File นี่ถือเป็น Tool ที่ยอดเยี่ยม มันมีวิธีการที่มีลักษณะเฉพาะของการ Navigating, Searching และ Modify สำหรับ Parse Tree มันจะช่วยประหยัดเวลาทำงานของ Programmer ได้หลายชั่วโมงหรือบางครั้งอาจเป็นวัน ๆ เลยทีเดียว
2. Wget

การใช้ Alpha Vantage APIs เราสามารถทำได้หลายอย่าง เช่น ดึงข้อมูลสำหรับค่า Bitcoin แบบรายวันและ Plot มัน


ตัวอย่าง API อื่น ๆ ที่คล้ายกัน ได้แก่
- Open Notify API - NASA และ International Space Station Data
- Exchange Rates API – อัตราแลกเปลี่ยนทั้งปัจจุบันและย้อนหลัง ซึ่งเผยแพร่โดย European Central Bank


Data Modelling
ดังที่ได้กล่าวไว้ในบทความ การ Clean หรือ Balance Data ถือเป็นอีกขั้นตอนสำคัญก่อนการสร้างแบบจำลองข้อมูล (Data Modelling)
Imabalanced-learn เป็น Tool หนึ่งในการสร้างความสมดุลให้กับ Datasets โดย Datasets จะเกิดความไม่สมดุลเมื่อ Class หรือ Category หนึ่งของ Data มีสัดส่วนของ Sample ที่ใหญ่กว่า Categories อื่น ๆ สิ่งนี้อาจทำให้เกิดปัญหาใหญ่สำหรับ Classification Algorithms ซึ่งอาจทำให้เกิดความเอนเอียงไปสู่ Class ที่มี Data มากกว่า
เช่น Command ที่เรียกว่า Tomek-Links จาก Library นี้ จะช่วยสร้างความสมดุล (Balance) ให้กับ Dataset
การประมวลผล Actual Data หรือ Modelling เกิดขึ้นผ่าน Scipy Stack ของ Python โดย Scipy Stack ของ Python เป็นชุดของ Software ที่ถูกออกแบบมาสำหรับการคำนวณทางวิทยาศาสตร์ใน Pytho โดยเฉพาะ Scipy Ecosystem ประกอบด้วย Libraries ที่มีประโยชน์อยู่มากมาย แต่ Numpy เป็น Tool ที่ทรงพลังที่สุดในบรรดา Tool ทั้งหมด
Package ที่เป็นพื้นฐาน จะรองกับการคำนวณทางวิทยาศาสตร์ที่ถูกสร้างขึ้น โดย NumPy ย่อมาจากคำว่า Numerical Python มันมี Feature ที่มีประโยชน์มากมายสำหรับการ Operation กับ Metrices หากมีใครที่ใช้ MATLAB มาก่อน พวกเขาจะรู้ได้ทันทีว่า NumPy ไม่เพียงแต่มีประสิทธิภาพเทียบเท่ากับ MATLAB เท่านั้น แต่ยังมีความคล้ายคลึงกันในการ Operation อีกด้วย
3. Pandas
Pandas เป็น Library ที่จัดเตรียม Data Structures เพื่อจัดการและปรับปรุง Data ให้เหมาะสม โครงสร้าง 2 มิติ (2-Dimensional Structure) ที่เรียกว่า Dataframe ถือเป็นสิ่งที่ได้รับความนิยมมากที่สุด
Pandas เป็น Tool ที่เหมาะสำหรับการจัดการกับ Data มันถูกออกแบบมาเพื่อให้ Data Manipulation, Aggregation และ Visualization ทำได้ง่ายและรวดเร็วยิ่งขึ้น
Data Visualization
1. Matplotlib
สำหรับ Package อื่นจาก SciPy Ecosystem ที่ถูกออกแบบมาเพื่อการสร้าง Visualizations ที่ทั้งเรียบง่ายและมีประสิทธิภาพก็คือ Matplotlib มันเป็น 2D Plotting Library ซึ่งสร้าง Publication Quality Figures ในรูปแบบ Hardcopy ที่หลากหลาย
ตัวอย่างบางส่วนของ Matplotlib Outputs
ตัวอย่างอื่น ๆ
2. Seaborn
Seaborn เป็น Python Data Visualization Library ที่สร้างมาจาก Matplotlib โดยหลัก ๆ มันได้จัดเตรียม High-Level Interface สำหรับการวาด Statistical Graphics ที่ให้ทั้งข้อมูลและความน่าดึงดูดใจ ส่วนใหญ่จะ Focus ไปที่การสร้าง Visualization อย่างเช่น Heat Maps
3. MoviePy
MoviePy เป็น Python Library สำหรับการตัด-ต่อ Video, Concatenations, Title Insertions, Video Compositing, Video Processing และ การสร้าง Custom Effects มันสามารถอ่านและเขียนรูปแบบทั่วไปได้ทั้งหมด ทั้งเสียงและ Video รวมไปถึง GIF ด้วย
(Bonus) NLP Tool — FuzzyWuzzy
นี่เป็น Tool เกี่ยวกับเสียงอีกตัวหนึ่ง เป็น Library ที่มีประโยชน์มากเมื่อต้องมีการใช้ String Matching สิ่งหนึ่งที่คุณสามารถดำเนินการได้อย่างรวดเร็ว เช่น String Comparison Ratios, Token Ratios และอื่น ๆ อีกมากมาย
ที่มา: https://towardsdatascience.com/
ดูตำแหน่งงานที่ใช้ทักษะ JavaScript ได้ที่นี่
รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert
อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ
บทความล่าสุด