การประมวลผลสารสนเทศ
ด้วยภาษาไพทอน
(Information processing in Python)
จดุ ประสงคก์ ารเรยี นรู้
นกั เรยี นสามารถเขียนโปรแกรมประมวลผลสารสนเทศได้
เนือ้ หาประกอบดว้ ย
1.การตดิ ตงั้ โมดลู pandas
2.โครงสรา้ งขอ้ มลู pandas
-ขอ้ มลู ท่ีเก็บเป็น Series
-ขอ้ มลู ท่ีเก็บเป็น DataFrame
3.ไฟลข์ อ้ มลู ในรูปแบบซีเอสวี
4.การเช่ือมโยงขอ้ มลู
5.การทาขอ้ มลู ใหเ้ ป็นภาพ
การประมวลผลสารสนเทศ
ไพทอนมีโมดลู จานวนมาก เพ่อื ใชจ้ ดั การขอ้ มลู
ในบทเรยี นนีข้ อแนะนาโมดลู pandas
ท่ีชว่ ยทางานดา้ นการประมวลผล โดยผใู้ ช้
ตอ้ งตดิ ตงั้ โมดลู Pandas และ Numpy
1.การตดิ ตงั้ โมดลู Pandas ในโปรแกรม PyCharm
1
2
4
3
5
6
วดิ ีโอยทู ปู การติดตงั้ โมดลู pandas ในโปรแกรม pycharm
ก๊อปปี้ลงิ คไ์ ปวางในเว็บบราวเซอร์
https://youtu.be/aTspc95lTVU
2.โครงสร้างข้อมูลของโมดลู pandsa
ขอ้ มลู ท่ีเกบ็ ใน pandas จะอยใู่ นรูปแบบชดุ ขอ้ มลู ท่ีเป็น
Series DataFrame
(ซีรสี )์ (ดาตา้ เฟรม)
2.1)ข้อมูลทเ่ี กบ็ เป็ น Series
ขอ้ มลู ท่ีเก็บเป็น series จะมีลกั ษณะคลา้ ยลสิ ตข์ องขอ้ มลู หน่งึ มติ ิ
ตัวอย่าง การใช้ series ในการเกบ็ คะแนนสอบวชิ าวทิ ยาการคานวณ
ของนกั เรยี นชนั้ ม.3/1 จานวน 20 คน
1 import pandas as pd
2
3 s=pd.Series([18,20,15,6,9,10,20,19,17,13,16,7,14,15,20,4,12,17,19,18])
4 print(s)
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ series.py
2.2)ข้อมูลทเี่ กบ็ เป็ น DataFrame
ขอ้ มลู ท่ีเก็บเป็น DataFrame จะมีลกั ษณะคลา้ ยตาราง(2 มติ ิขนึ้ ไป)
ตัวอย่าง การใชง้ าน DataFrame
import pandas as pd
df=pd.DataFrame([[1,’a’], [2,’b’], [3,’c’]])
print(df)
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ DataFrame.py
3.ไฟลข์ ้อมูลในรูปแบบซเี อสวี
ไฟลร์ ูปแบบซีเอสวี หรอื CSV (comma separated values)
คอื ไฟลข์ อ้ มลู ท่ีแตล่ ะตวั ในแถวเดียวกนั ถกู ค่นั ดว้ ยเครอ่ื งหมายจลุ ภาค (,)
โดยอาจมีแถวแรกสดุ เป็นช่ือของคอลมั น์ หรอื หวั ตาราง
ตัวอยา่ ง ขอ้ มลู ของนกั เรยี นชนั้ ม.3/1 จานวน 20 คน ประกอบดว้ ย
เลขประจาตวั นกั เรยี น เพศ (1 แทนเพศชาย และ 2 แทนเพศหญิง)
คะแนนสอบวิชาวิทยาการคานวณ และสว่ นสงู
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ DataCSV.py
กรณีท่ีไฟล์ CSV ไมม่ ีแถวท่ีเป็นช่ือคอลมั นห์ รอื หวั ตาราง ผใู้ ชส้ ามารถระบหุ วั ตารางในการแสดงผลได้
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ stdentNoheader.py
การแสดงขอ้ มลู ใน DataFrame ออกทางจอภาพ เราสามารถใชฟ้ ังกช์ นั print() แสดงผลลพั ธใ์ นรูปแบบตา่ งๆได้
print(stdData) print(stdData.head(2)) print(stdData.tail(2))
print(stdData[[‘ID’, ‘CsScore’]]) print(stdData[[‘ID’, ‘CsScore’]].head(2))
print(stdData[‘CsScore’]) print(stdData[stdData.Gender==2])
print(stdData[stdData.CsScore>=16])
การนับจานวนข้อมูล
ใชฟ้ ังกช์ นั count( ) print(stdData.count())
การหาค่าเฉล่ยี
ใชฟ้ ังกช์ นั mean( ) print(stdData.CsScore.mean())
การหาคา่ เฉลีย่ แยกกลุ่ม
ใชฟ้ ังกช์ นั groupby( ) print(stdData.groupby(‘Gender’).mean())
การจดั เรียงข้อมูล
ใชฟ้ ังกช์ นั print(stdData.sort_values(by=[‘Height’]))
sort_values( )
4.การเชอ่ื มโยงข้อมูล
การเช่ือมโยงขอ้ มลู 2 ไฟล์
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ connect2file.py
การเช่ือมโยงขอ้ มลู กรณีท่ีช่ือคอลมั นห์ ลกั ไมต่ รงกนั
ผลลพั ธท์ ่ีได้
ช่ือไฟล์ connect2file-1.py
5.การทาข้อมูลใหเ้ ป็ นภาพ
ตอ้ งติดตงั้ โมดลู matplotlib กอ่ น
วิธีตดิ ตงั้ เหมือนกนั กบั การตดิ ตงั้ โมดลู pandas
การนาเสนอผลคะแนนดว้ ยฮิสโทแกรม การนาเสนอผลคะแนนดว้ ยแผนภาพการกระจาย
การนาเสนอผลคะแนนดว้ ยฮิสโทแกรม
ผลลพั ธ์
ไฟล์ histrogram.py
การนาเสนอผลคะแนน
ดว้ ยแผนภาพการกระจาย
ผลลพั ธ์
ไฟล์ star.py
แบบฝึ กหดั ทา้ ยบท
1.กิจกรรมท่ี 2.1