Pandas with Thonny Header
“การสร้างแอปพลิเคชันหรือซอฟต์แวร์ประยุกต์ให้ผู้อื่นใช้งานมีหลายรูปแบบ เช่น งานกราฟฟิก งานที่เกี่ยวกับการประมวลผลข้อมูล เครื่องมือทำงาน สื่อการเรียนรู้ หรือเกม แล้วเพราะเหตุใดทำไมแอปพลิเคชันบางตัวจึงได้รับความนิยมเป็นอย่างมาก กว่าจะมาเป็นแอปพลิเคชันที่ดีต้องผ่านขั้นตอนอย่างไรมาบ้าง นอกจากสร้างแอปพลิเคชันตามความสนใจของผู้พัฒนาแล้ว ยังต้องสำรวจความต้องการของผู้ใช้ ออกแบบ สร้าง และทดสอบ เพื่อนำไปปรับปรุงผลงานให้ดียิ่งขึ้น โดยจะขอกล่าวถึงการพัฒนาแอปพลิเคชันด้วยภาษาไพทอน ซึ่งกำลังได้รับความนิยมในการใช้สร้างแอปพลิเคชันในปัจจุบัน”

1. การติดตั้งโมดูล Pandas ในโปรแกรม Thonny

            ในบทเรียนนี้เราจะใช้ IDE ที่ชื่อว่า Thonny ในการเขียนโปรแกรมภาษา Python ซึ่งตัวโปรแกรมสามารถคอมไพล์ (compile) โค้ดคำสั่งพื้นฐานได้เลย แต่เนื่องด้วยในบทเรียนนี้ เราจำเป็นต้องใช้โมดูล Pandas เข้ามาช่วยในการประมวลผล ดังนั้น เราต้องติดตั้งโมดูลเสริมก่อนเริ่มเขียนโปรแกรม

1.1 เปิดโปรแกรม Thonny ขึ้นมา (ถ้ายังไม่มีสามารถดาวน์โหลดและติดตั้งได้ที่ https://thonny.org)
1.2 ที่เมนู “Tools” เลือก “Manage packages…”
Manage Packages in Thonny
1.3 พิมพ์ค้นหาคำว่า “pandas” หลังจากนั้นคลิกที่ “Find package from PyPl” เมื่อพบแล้วคลิกที่ “Install” รอสักครู่
Install Pandas
1.4 เมื่อเสร็จแล้วคลิกที่ปุ่ม “Close”

2. โครงสร้างข้อมูลของ Pandas

เป็นข้อมูลที่เก็บอยู่ในรูปแบบของชุดข้อมูลแบบ Series หรือ DataFrame ดังนี้

2.1 ข้อมูลที่เก็บเป็น Series

ข้อมูลที่เก็บเป็น Series มีลักษณะคล้ายลิสต์ของข้อมูลหนึ่งมิติ หากผู้ใช้ไม่กำหนดดัชนี Pandas จะกำหนดดัชนีเริ่มต้นตั้งแต่ 0 ถึง จำนวนข้อมูลใน Series – 1 ดังตัวอย่างต่อไปนี้

import pandas as pd
s=pd.Series ([18,20,15,6,9,10,20,19,17,13,16,7,14,15,20])
print(s)
Series Code Sample
ผลลัพธ์ที่ได้
Series Output
อธิบายโปรแกรม:
• บรรทัดที่ 1 นำโมดูล pandas เข้ามาใช้ในโปรแกรม แล้วอ้างถึงข้อมูลนี้ด้วยชื่อ pd
• บรรทัดที่ 2 กำหนดตัวแปร s เป็นชุดข้อมูล Series ที่ระบุภายในฟังก์ชัน Series()
• บรรทัดที่ 3 แสดงผลชุดข้อมูลในตัวแปร s

2.2 ข้อมูลที่เก็บเป็น DataFrame

ข้อมูลที่เก็บเป็น DataFrame มีลักษณะคล้ายตาราง (สองมิติขึ้นไป) หากผู้ใช้ไม่กำหนดดัชนี Pandas จะกำหนดดัชนีเริ่มต้นตั้งแต่ 0 ถึง จำนวนข้อมูลในแต่ละมิติ – 1 ดังตัวอย่างต่อไปนี้

import pandas as pd
df=pd.DataFrame([[1,’a’],[2,’b’],[3,’c’]])
print(df)
DataFrame Code Sample
ผลลัพธ์ที่ได้
DataFrame Output
อธิบายโปรแกรม:
• บรรทัดที่ 1 นำโมดูล pandas เข้ามาใช้ในโปรแกรม แล้วอ้างถึงข้อมูลนี้ด้วยชื่อ pd
• บรรทัดที่ 2 กำหนดตัวแปร df เป็นชุดข้อมูล DataFrame ที่ระบุภายในฟังก์ชัน DataFrame()
• บรรทัดที่ 3 แสดงผลชุดข้อมูลในตัวแปร df

2.3 ไฟล์ข้อมูลในรูปแบบซีเอสวี

ไฟล์รูปแบบซีเอสวี หรือ CSV (comma separated values: CSV) เป็นไฟล์ข้อมูลที่ข้อมูลแต่ละตัวในแถวเดียวกัน (บรรทัดเดียวกัน) ถูกคั่นด้วยเครื่องหมาย , (comma) โดยอาจมีแถวแรกสุดเป็นชื่อของแต่ละคอลัมน์หรือหัวตาราง ตัวอย่างเช่น ข้อมูลนักเรียน 20 คน ประกอบด้วยเลขประจำตัวนักเรียน เพศ (1 แทนเพศชาย 2 แทนเพศหญิง) คะแนนสอบวิชาวิทยาการคำนวณ และส่วนสูง มีรูปแบบข้อมูลดังนี้

CSV Data Structure

(สามารถดาวน์โหลดไฟล์นี้ได้จากเว็บไซต์ http://oho.ipst.ac.th/studentData.csv หรือคลิกที่ปุ่มด้านล่าง)

เมื่อได้ไฟล์ CSV มาแล้ว ขั้นตอนต่อไปเราจะเริ่มประมวลผลข้อมูลโดยการใช้ฟังก์ชัน read_csv() เพื่อนำข้อมูลจากไฟล์ CSV เข้ามาเก็บใน DataFrame โดยในตัวอย่างนี้เราจะเขียนโปรแกรมใน https://repl.it เนื่องจากสามารถจัดการไฟล์ได้ง่ายกว่า Thonny มีขั้นตอนดังนี้

2.3.1 เข้าเว็บไซต์ https://repl.it คลิกที่เครื่องหมาย + ที่มุมขวาบน เลือกภาษาที่เรากำลังเรียน นั่นคือ “Python”
Using Repl.it
2.3.2 พิมพ์ชื่องานตามต้องการ แล้วคลิกที่ปุ่ม “Create repl”
2.3.3 พิมพ์คำสั่งตามด้านล่างนี้ เสร็จแล้วคลิกที่ปุ่ม “Run” แล้วรอสักครู่
import pandas as pd
sdata=pd.read_csv(‘studentData.csv’,delimiter=’,’)
print(sdata)
Repl.it Code
2.3.4 เมื่อ Run เสร็จแล้ว จะเห็นว่าโปรแกรมไม่สามารถรันได้ เนื่องจากโปรแกรมหาไฟล์ไม่พบ ให้เราทำการแดรกเมาส์ลากไฟล์ studentData.csv ไปใส่ในโปรแกรม แล้วกดปุ่ม “Run” อีกครั้ง จะเห็นว่าโปรแกรมแสดงผลไฟล์ของเราได้แล้ว
Final Result CSV Import

นอกจากนี้ ในการแสดงข้อมูลใน DataFrame ออกทางจอภาพ สามารถใช้ฟังก์ชัน print() แสดงผลลัพธ์ในรูปแบบต่างๆ ได้ โดยสามารถทดลอง Run คำสั่งต่างๆ ตามตัวอย่าง แล้วทำความเข้าใจ พร้อมอธิบายการทำงานของการใช้คำสั่งแต่ละแบบได้

print(sdata) #แสดงข้อมูลทั้งหมดใน DataFrame
print(sdata.head(2)) #แสดงข้อมูล 2 แถวแรก (2 บรรทัดบนสุด)
print(sdata.tail(2)) #แสดงข้อมูล 2 แถวสุดท้าย (2 บรรทัดล่างสุด)

2.4 การนับจำนวนข้อมูลแต่ละคอลัมน์ใน DataFrame

ข้อมูลใน DataFrame ที่รับมาจากไฟล์ CSV นั้น สามารถนำไปประมวลผลตามที่ต้องการ เพื่อให้ได้ผลลัพธ์ทางสถิติที่เป็นประโยชน์ เช่น ค่าเฉลี่ย ค่าสูงสุด ค่าต่ำสุด จำนวนข้อมูล เป็นต้น

การนับจำนวนข้อมูลแต่ละคอลัมน์ใน DataFrame ทำได้โดยใช้ฟังก์ชัน count() ดังนี้

import pandas as pd
sdata=pd.read_csv(‘studentData.csv’,delimiter=’,’)
print(sdata.count())
Count Function
ผลลัพธ์ที่ได้
Count Result

การนับจำนวนข้อมูลเพียงคอลัมน์เดียวจาก DataFrame สามารถใช้คำสั่งในรูปแบบต่อไปนี้

import pandas as pd
sdata=pd.read_csv(‘studentData.csv’,delimiter=’,’)
print(sdata[‘เลขประจำตัว‘].count())
ผลลัพธ์ที่ได้
Specific Column Count

2.5 การทำข้อมูลให้เป็นภาพ

การทำให้ข้อมูลให้เป็นภาพ (Data Visualization) เป็นขั้นตอนหนึ่งของการประมวลผลข้อมูลขนาดใหญ่ เพื่อให้การนำเสนอข้อมูลจำนวนมากเข้าใจได้ง่ายขึ้นกว่ารูปแบบตาราง พร้อมนำผลสรุปที่ได้ไปใช้ประโยชน์ได้อย่างชัดเจน ซึ่งอาจะนำเสนอได้ทั้งรูปภาพ แผนภูมิ หรือสื่อที่มีปฏิสัมพันธ์กับผู้ใช้

[Image of data visualization types chart]