การพล็อตฮิสโตแกรมของข้อมูลไอริส
ในแบบฝึกหัดของส่วนนี้ จะใช้ชุดข้อมูลคลาสสิกที่รวบรวมโดยนักพฤกษศาสตร์ Edward Anderson และได้รับการเผยแพร่อย่างกว้างขวางโดย Ronald Fisher นักสถิติผู้มีผลงานโดดเด่นที่สุดคนหนึ่งในประวัติศาสตร์ Anderson ได้วัดคุณสมบัติทางกายภาพของตัวอย่างดอกไอริส 3 สายพันธุ์อย่างละเอียด ได้แก่ Iris setosa, Iris versicolor และ Iris virginica ชุดข้อมูลเต็มสามารถดูได้ใน scikit-learn ในที่นี้จะใช้ข้อมูลความยาวกลีบดอก
ให้พล็อตฮิสโตแกรมของความยาวกลีบดอกจากตัวอย่าง Iris versicolor จำนวน 50 ตัวอย่าง โดยใช้การตั้งค่าเริ่มต้นของ matplotlib/seaborn โดยระบุสไตล์เริ่มต้นของ seaborn ด้วย sns.set() ซึ่ง sns คือ alias ที่ใช้ในการนำเข้า seaborn
ข้อมูลย่อยที่เก็บความยาวกลีบดอกของ Iris versicolor หน่วยเซนติเมตร (cm) ถูกเก็บไว้ใน NumPy array ชื่อ versicolor_petal_length
ในวิดีโอ Justin พล็อตฮิสโตแกรมโดยใช้ไลบรารี pandas และ indexing DataFrame เพื่อดึงคอลัมน์ที่ต้องการ แต่ในแบบฝึกหัดนี้ใช้เพียง NumPy array ที่เตรียมไว้เท่านั้น นอกจากนี้ Justin ยังกำหนดคำสั่งพล็อต (ยกเว้น plt.show()) ให้กับตัวแปรดัมมี _ เพื่อป้องกันไม่ให้ผลลัพธ์ที่ไม่จำเป็นแสดงขึ้นมา ซึ่งไม่ได้บังคับในคำตอบของแบบฝึกหัดนี้ แต่เป็นแนวปฏิบัติที่ดี หรือหากทำงานในสภาพแวดล้อมแบบ interactive เช่น Jupyter notebook ก็สามารถใส่ ; ต่อท้ายคำสั่งพล็อตเพื่อให้ได้ผลเช่นเดียวกัน Justin ชอบใช้ _ จึงเห็นได้ในโค้ดเฉลย
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Statistical Thinking in Python (ตอนที่ 1)
คำแนะนำการฝึกหัด
- นำเข้า
matplotlib.pyplotและseabornโดยใช้ alias ตามปกติ (pltและsns) - ใช้
seabornเพื่อตั้งค่าการพล็อตเริ่มต้น - พล็อตฮิสโตแกรมของความยาวกลีบดอก Iris versicolor โดยใช้
plt.hist()และ NumPy arrayversicolor_petal_lengthที่เตรียมไว้ - แสดงฮิสโตแกรมด้วย
plt.show()
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import plotting modules
# Set default Seaborn style
# Plot histogram of versicolor petal lengths
# Show histogram