การสำรวจข้อมูลโดยใช้กราฟกล่อง
ในทำนองเดียวกัน ถ้าเราต้องการพล็อตกราฟกล่อง เราจะต้องเริ่มจากการอ่านข้อมูลและจัดเตรียมข้อมูลก่อน แล้วจึงใช้ฟังก์ชันที่ใช้สำหรับพล็อตกราฟกล่องจากไลบรารี matplotlib ซึ่งมีขั้นตอนดังนี้
ขั้นตอนที่ 1: import ไลบรารี pandas เพื่อเรียกใช้งานฟังก์ชันสำหรับอ่านไฟล์ที่มีนามสกุล .csv และ import ไลบรารี matplotlib เพื่อเรียกใช้งานฟังก์ชันสำหรับพล็อตกราฟกล่อง โดยใช้คำสั่งดังนี้
import pandas as pd
import matplotlib.pyplot as plt
ขั้นตอนที่ 2: เรียกใช้งานฟังก์ชัน read_csv เพื่ออ่านข้อมูลจากไฟล์ชื่อ average-income.csv แล้วนำมาจัดเก็บไว้ใน data frame ชื่อ df โดยใช้คำสั่งดังนี้
df = pd.read_csv ('average-income.csv')
ขั้นตอนที่ 3: จัดเตรียมข้อมูลที่จะใช้สำหรับการพล็อตกราฟกล่อง สมมติว่าเราต้องการพล็อตกราฟกล่องโดยให้แกนนอนเป็นข้อมูลในคอลัมน์ที่ 0 และแกนตั้งเป็นข้อมูลในคอลัมน์ 1 ถึง 10 เราจะต้องอ่านข้อมูลในคอลัมน์ที่ 0 มาเก็บไว้ในตัวแปร x และอ่านข้อมูลในคอลัมน์ที่ 1 ถึง 10 มาเก็บไว้ในตัวแปร y โดยใช้คำสั่งดังนี้
x = df.iloc[:, 0]
y = df.iloc[:, 1:10]
โดยที่ df.iloc[:, 0] เป็นการเข้าถึงข้อมูลทุกแถวในคอลัมน์ที่ 0 และ df.iloc[:, 1:10] เป็นการเข้าถึงข้อมูลทุกแถวในคอลัมน์ที่ 1 ถึง 10
ขั้นตอนที่ 4: หลังจากจัดเตรียมข้อมูลที่จะพล็อตแล้ว ขั้นตอนต่อมาก็คือการพล็อตกราฟกล่องโดยใช้ฟังก์ชัน boxplot จากไลบรารี matplotlib โดยใช้คำสั่งดังนี้
plt.boxplot(y)
เนื่องจากแกนนอนจะแสดงค่าเป็นอินเด็กซ์ ดังนั้นถ้าเราต้องการแทนอินเด็กซ์ด้วยข้อความที่เก็บอยู่ในตัวแปร x เราสามารถทำได้โดยใช้คำสั่งดังนี้
plt.xticks([1, 2, 3, 4, 5], x, rotation='vertical')
เราสามารถหมุนข้อความเป็นแนวตั้งได้โดยการกำหนดค่า rotation='vertical' เนื่องจากมีบางค่าในแนวแกนนอนเป็นข้อความที่ยาวจนไปทับค่าที่อยู่ติดกันบนแกนนอน
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv ('average-income.csv')
x = df.iloc[:, 0]
y = df.iloc[:, 1:10]
plt.boxplot(y)
plt.xticks([1, 2, 3, 4, 5], x, rotation='vertical')