การค้นหาความร้โูดยการ...
TRANSCRIPT
1
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การคนหาความรโดยการวเคราะหขอมลดวย R และ Weka Knowledge Discovery by Data Analysis with R and Weka
สณ รกษาเกยรตศกด
การคนหาความร
การคนหาความรในสงทเราอยากทราบหรอเราอาจจะเรยกวากระบวนการวจย สามารถด าเนนการได 2 แนวทางคอ forward และ backward
Forward เรมจากวตถประสงค/ค าถามการวจย หรอโจทยหรอปญหาการวจยนนเอง (Objective หรอ Problem definititions) จากนนกจะเปนวธการด าเนนการ (ซงอาจจะตองมกระบวนการทบทวนวรรณกรรม – review literature หรอไมตองมกได เพราะโจทยอาจจะเปนปญหาทเกยวกบการปฏบตงาน ซงกด าเนนการไดเลย) ในวธการด าเนนงาน จะเกยวของกบการออกแบบและ/หรอการพฒนาเพอใหไดค าตอบของโจทยทตองการ ในกระบวนการนอาจจะตองมการออกแบบเครองมอทใชในการเกบรวบรวมขอมลเพอตอบโจทย เครองมออยางงายทใชกนคอการออกแบบสอบถาม จากนนกเปนการก าหนดกลมตวอยางทจะตอบแบบสอบถาม (sample) ซงตามหลกการแลวกตองมการนยามประชากรทเราสนใจจะศกษา (population) ดวย และระบวากลมตวอยางทไดมาและเปนตวแทน (representative) ของประชากรนน ไดมาดวยวธการสมตวอยาง (sampling) แบบใด เชน การสมอยางงาย (random sampling) ซงคอการสมททกหนวยของประชากรมโอกาสไดรบการสมเขามาดวยความนาจะเปนทเทากน หรอการสมแบบแบงชน (stratify sampling) ซงคอการสมทใหไดสดสวนของตวแปรทตองการแบงชนตามตองการ เปนตน แตการวเคราะหขอมลเพอตอบโจทยในการท างานมกใชกลมตวอยางตามสะดวก (convenient sample) ตวอยางเชน ในการปฏบตงานทกอยาง ตองมการประเมนผลการปฏบตงานของกจกรรมใด กจกรรมหนง กใชกลมตวอยางของผทเขามารวมกจกรรม เปนตวแทนของประชากรทตองการ
ในการวเคราะหขอมลนนเราศกษาจากกลมตวอยาง (sample) ทเรามขอมล โดยค านวณคาสถต (statistics) ตาง ๆ จากกลมตวอยาง ทเราเรยกวาสถตพรรณนา (descriptive statistics) ท าใหเราไดความรเกยวกบลกษณะของกลมตวอยางทเราศกษา แตเราจะขยายผลของการศกษาจากกลมตวอยางนไปอนมาน (inference) เพอใหไดความรเกยวกบประชากร (parameters) ไดโดยกระบวนการทดสอบสมมตฐานทางสถต (statistical hypothesis testing) ซงเปนกระบวนการใชสถตอนมาน/สถตอางอง (inferential statisitcs) ซงค านวณจากสถตพรรณนา (descriptive statistics) ส าหรบการทดสอบคณลกษณะของประชากร (parameters) ทตองการ โดยใชหลกการความนาจะเปน (probability distribution) ของการแจกแจง (distribution) ของสถตอางองนน เพอสรปความจรงเกยวกบประชากร
2
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
สถตอนมานม 2 แบบ คอ สถตพาราเมตรก (parametric) และสถตนอนพาราเมตรก (non parametric) สถตพาราเมตรกจะมขอตกลงเบองตน (assumption) ขอมล/ตวแปร (variable) ตองมการแจกแจงความนาจะเปนแบบปกต (normal distribution) ซงโดยธรรมชาตแลว ขอมลทเกดโดยธรรมชาตจะมการแจกแจงแบบปกต ถาขอมลไมมการแจกแจงแบบปกตควรจะตองใชสถตนอนพาราเมตรกแทน ในการค านวณของสถตนอนพาราเมตรกจะไมใชขอมลดบของตวแปรมาค านวณ แตจะใชอนดบ (rank) ของขอมลมาค านวณ ซงเปนวธการทหยาบกวา ดงนนหากสามารถจะใชวธการทางสถต (statistical methods) ทเรยกวาพาราเมตรกได กควรท าในเบองแรก หากไมสามารถท าได เชน ขอมลไมมการแจกแจงแบบปกต หรอขอตกลงเบองตนของวธการทางสถตนนไมเปนจรง กคอยไปใชวธการแบบนอนพาราเมตรกแทน ขอไดเปรยบของวธการพาราเมตรกคอใหก าลงการทดสอบ (power) สงกวาวธการนอนพาราเมตรก
วธการทาง backward ม 2 กรณ คอ
กรณท 1: เราอาจจะไมไดระบค าถามการวจยทชดเจนนกหรอเพยงระบวตถประสงคกวาง ๆ ไว แลวเกบขอมลตาง ๆ ทคาดวาจะเกยวของกบวตถประสงคของโจทย เชน วตถประสงค คอ ตองการศกษาการฝกงานของนสตเอกวทยาการคอมพวเตอร (วชา CP493 Internship) ซงเปนวชาบงคบของหลกสตร ขอมลและเครองมอทจะใชในการเกบรวบรวมขอมลทจะตอบโจทยยงไมชดเจน (ซงจะเปนโจทยใหผอบรมไดฝกปฏบตตอไป)
กรณท 2: การคนหาความรจากขอมลทอยในฐานขอมลการปฏบตงาน (Knowledge Discovery in Database หรอ KDD) การคนหาความรในกรณนจะใชวธการทางสถต (statistical methods) หรอวธการทางการท าเหมองขอมล (data mining) ดวยวธการทางการเรยนรของเครอง (machine learning) กได
การคนหาความรโดยวธการเรยนรของเครองจะตงอยบนสมมตฐานวาจะแบงขอมลออกเปน 2 ชด ชดหนงคอชดในการสรางโมเดล (training set) ซงจะเปนขอมลสวนใหญ และขอมลอกชดหนงเรยกวาชดทดสอบโมเดล (test set) ขอมลสองชดนตองเปนอสระตอกน (independent) คอตองไมซ ากน
เมอท าการ train แลว จะไดผลลพธเปนความรหรอโมเดล ซงอาจจะอยในรปสมการ หรอ กฏ เปนตน โมเดลทไดจะมความนาเชอถอเพยงใดตองมการประเมนโมเดล โดยจะใช test set (จะกลาวในรายละเอยดตอไป)
วตถประสงคของการอบรม
1. แสดงการใชเครองมอออนไลน Google WORK (FORMS และ SHEETS) ในการเกบรวบรวมขอมล 2. แสดงการวเคราะหขอมลอยางงายโดย Google ส าหรบขอมลทจดเกบโดย FORMS และวเคราะห
ขอจ ากดของการประมวลผลโดย Google จากโจทย “การฝกงานของนสต” 3. แสดงการน าขอมลจาก Google WORK มาวเคราะหขอมลทางสถตโดยใชโปรแกรม R โดยมการสรางตว
แปรใหม วเคราะหสถตพรรณา สถตอนมาน เชน การเปรยบเทยบคาเฉลย 2 กลมดวย t-test การ
3
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
เปรยบเทยบคาเฉลยมากกวา 2 กลมดวย One way ANOVA และการทดสอบความแตกตางของความถของกลมดวยไครสแคว
4. ใชขอมลของ Weka เปนตวอยางในสรางโมเดลโดยใชการวเคราะห Regression และ Logistic Regression โดยวเคราะหดวยโปรแกรม R
5. ใช Weka ในการท า data mining โดยใชขอมลตวอยางของ Weka และวเคราะหโจทยประเภท Prediction/Regression, Classification, Association, Clustering โดยใช Explorer Interface
6. เปรยบเทยบการวเคราะหโจทยประเภท Classification ดวย data set หลายชด และใชหลาย algorithm โดยใช Experimenter Interface
การใชโปรแกรม R ในการวเคราะหขอมลทางสถต
สณ รกษาเกยรตศกด
การ Install โปรแกรม R และ Package RcmdR
1. ไป download โปรแกรมท R Project http://www.r-project.org/ เลอก Download R แลวเลอก CRAN Mirrors เปน Thailand
2. เลอก Download R for Windows แลวเลอก base จะไดดงรป
3. เลอก Download R 3.4.3 for Windows ให save Application ท download (R-3.4.3-win.exe)
4
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
4. ท าการ run โปรแกรม (install) เลอกโฟลเดอรตาม default
5. Select Components
ใหเอา 32-bit Files ออกส าหรบเครอง 64 bits
5
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6. เลอกตาม default และ Next จนระบบตดตงเสรจ
7. เมอ Install เรยบรอยแลวจะปรากฏไอคอนของโปรแกรม R บน Desktop 8. ให double click โปรแกรมเพอใชงาน
โดยตอง Install package เพมส าหรบเมนการวเคราะหขอมลทางสถต โดยไปท Packages > Install package(s)
6
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
9. เลอก CRAN mirror 10. เลอก Packages เปน Rcmdr
ระบบจะถาม
ใหตอบ Yes
7
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ระบบจะท าการ download packages ตาง ๆ มาเกบไว
11. เลอก Packages > Load Packages จะขนดงรป
12. ใหกด Yes แลวกด OK คอให Install จาก CRAN
13. ชวงนจะใชเวลาสกพก รอจน download เสรจ (ระบบจะ download ทก packages ทจ าเปน)
8
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
14. เมอเรยบรอยจะขนหนาตาง R Commander สามารถทดสอบโดยอานขอมลจาก Excel ได โดยไปทเมน Data > Import data > from Excel
15. เมอเลกใชงานใหปด R Commander และ RGui 16. เมอตองการใชงานใหม เมอเปด RGui ขนมาตอง Load Package Rcmdr มาใชงานเสมอ
หมายเหต เนองจากการตดตงตองใช Internet ดงนนจงไดเตรยมโปรแกรม R ท install เรยบรอยแลวใน Virtual Machine ส าหรบภาคปฏบต
9
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การใชเครองมอออนไลน Google WORK (FORMS & SHEETS) ในการเกบรวบรวมขอมล
Google SHEETS
เครองมอในการเกบรวบรวมขอมล ในแบบเดมมกจะใชแบบสอบถามทเปนกระดาษ เชน ดงตวอยาง แบบรายงานการฝกงานของนสต ชนปท 3 …. ดงแสดงในไฟล Report_Internship จากนนน าขอมลมาคยขอมลลงใน Excel หรอ Goggle SHEETS ไดดงแสดงในไฟลชอ Report_Internship
Google FORMS
การเกบรวบรวมขอมลออนไลนดวย Google FORMS ก าลงเปนทนยมอยางมากเนองดวยการสรางฟอรม (FORM) ท าไดงาย และสามารถจะเกบขอมลแบบออนไลนไดทนท ท าใหประหยดคาใชจาย และ Google FORM ยงประมวลผลขอมลอยางงายใหในระดบตวแปรเดยว เชน จ านวนและรอยละ เปนตน หากผวจยตองการวเคราะหขอมลเพมเตมดวยโปรแกรมส าเรจรปทางสถตอน ๆ เชน โปรแกรม SPSS หรอโปรแกรม R กสามารถ download ขอมลจาก Form_responses มาใน Excel แลวด าเนนการตอตามตองการได
จากโจทย “การฝกงานของนสต” ผวจยไดสรางเครองมอในการเกบขอมลเพมเตมจากการฝกงานของนสต โดยใช Google FORMS ดงแสดงในไฟล Form และขอมลจากการตอบแบบสอบถาม ดงแสดงในไฟล Form_Responses โดย Google จะประมวลผลขอมลอยางงายใหดงแสดงในไฟล Summary_Responses
การจดเตรยมขอมลส าหรบการวเคราะห
ผวจยไดจดเตรยมขอมลส าหรบการวเคราะหโดยน าตวแปรทสนใจจากไฟล Report_Internship และจากไฟล Form_Responses โดยท าการ join ดวย ID ซงกคอหลกการท า ETL นนเอง แตเนองจากขอมลมจ านวนนอยและผวจยรจกขอมลด จงท าดวยมอ โครงสรางขอมลทไดดงแสดงในตารางท 1 และขอมลดงแสดงในไฟล DataAll
10
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ตารางท 1 โครงสรางขอมลของ “การฝกงานของนสต” ชอตวแปร ค าอธบายตวแปร คาของตวแปร
(Domain) ระดบการวด (Measure)
ID รหสนสต รหส 4 หลกสดทาย - GENDER เพศ ชาย, หญง GPA เกรดเฉลย 1.00-4.00 ORG_SIZE ขนาดขององคกรทฝกงาน ขนาดเลก (นอยกวา 15 คน)
ขนาดกลาง (15 - 50 คน) ขนาดใหญ (มากกวา 50 คน)
PAY คาเบยเลยง ไมไดรบเบยเลยง นอยกวา 100 100 - 200 201 - 300 301 - 400 มากกวา 400
DAYS จ านวนวนทท างาน 20 – 60 HOURS จ านวนชวโมงทท างาน 130 - 500 CP121, …, CP444
ความรทใชในวชาทเรยนมา 1 – 5 (นอย – มาก)
WSK1, …, WSK6
ความรและทกษะในการท างาน 4=ดมาก, 3=ด, 2=ปานกลาง, 1=นอย, 0=นอยมาก
USK1, …, USK5
อตลกษณนสตของมหาวทยาลย “มทกษะการสอสาร”
4=ดมาก, 3=ด, 2=ปานกลาง, 1=นอย, 0=นอยมาก
Letter ใบรบรองการฝกงาน 0=ไมม, 1=ม Stamp ใบประทบตราบรษท 0=ไมม, 1=ม
11
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ระดบการวดของขอมล (Level of Measurement)
ขอมลหรอตวแปรหรอแอททรบวต (Attribute) ทจะวเคราะหเพอหาคาสถตของขอมลในเบองตนนน เราตองทราบวาขอมลของนนมระดบการวด (measure) เปนอยางไร
ระดบการวดแบงเปน 2 ระดบใหญ ๆ คอ
1. ขอมลเชงคณลกษณะหรอขอมลเชงคณภาพ (Qualitative data) แบงออกเปน 2 ระดบคอ Nominal เปนขอมลเชงกลมหรอนามบญญต เชน เพศ หรอ Gender ม 2 กลม/คา คอ
Male และ Female หรอ ชาย และ หญง เปนตน Ordinal เปนขอมลเชงกลมแบบมอนดบ เชน วฒการศกษา หรอ EDU ม 3 กลม/คา คอ
ต ากวาปรญญาตร ปรญญาตร สงกวาปรญญาตร เปนตน ซงการศกษามอนดบจากต าไปสง (มปรมาณ หรอ magnitude แตไมม scale หรอหนวยวด)
2. ขอมลเชงปรมาณ (Quantitative data) คอขอมลทมคาตอเนอง (จ านวนจรง แตในทางปฏบตอาจจะบนทกเปนจ านวนเตม) มหนวยวด (scale) แบงเปน 2 ระดบคอ Interval เปนขอมลแบบชวง มหนวยวด เชน คะแนน เปนขอมลทไมมศนยสมบรณ มก
เปนเครองมอวดทางจตวทยา (psychological measurement) เครองมอสอบถามความคดเหน ขอสอบวดตาง ๆ หรอเครองมอวด KPI ตาง ๆ
Ratio เปนขอมลแบบอตราสวน มหนวยวด และมกเปนเครองมอวดทางกายภาพ (physical measurement) ทเปนสากล มศนยสมบรณหรอศนยแท ท าใหสามารถเปรยบเทยบคาของขอมลแบบอตราสวนได เชน อาย (ป) น าหนก (กก.) สวนสง (ซม.) เปนตน
หมายเหต ในการวเคราะหขอมลทางสถต สถตทเลอกใชจะขนอยกบลกษณะของขอมล 3 ระดบเทานน คอ Nominal, Ordinal, Scale (Interval/Ratio)
Measure ในโปรแกรม SPSS, Excel, R, Weka เปนดงน
nominal ordinal Scale (interval/ratio)
SPSS nominal ordinal scale
Excel text text number
R character, factor character, factor numeric
Weka nominal nominal numeric
Workshop 1: จงใสระดบการวดของขอมล (Measure: nominal, ordinal, scale) ลงในตารางท 1
12
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
สถตและพารามเตอร
สถต (statistics) เปนตวเลขเปนคาทค านวณไดจากกลมตวอยาง เปนคณลกษณะของกลมตวอยาง (sample)
พารามเตอร (parameter) เปนคณลกษณะของประชากร (population) ซงเราไมทราบคา
สถต เปนตวประมาณคา (estimator) ของพารามเตอร
Workshop 2: จงเขยนสญลกษณแทนสถตและพารามเตอรตอไปน และแสดงสตรการค านวณของคาสถต (ตวอยางสญลกษณ: x, SD, r, µ, เปนตน)
สถต (สญลกษณและสตรการค านวณ) พารามเตอร (สญลกษณ)
คาเฉลยหรอ Mean
คาเบยงเบนมาตรฐาน หรอ Standard deviation
คาสมประสทธสหสมพนธ หรอ Correlation
การหาคาสถตส าหรบตวแปรเดยว
ตวแปรเชงคณลกษณะ: คาความถ (จ านวนและรอยละ) หรอ Frequency & percentage
กราฟ: กราฟแทง (bar chart) หรอกราฟพาย (pie chart)
ตวแปรเชงปรมาณ: คากลาง และคาการกระจาย หรอคาเปอรเซนไทลตาง ๆ ไดแก
คาเฉลย (Mean) และคาเบยงเบนมาตรฐาน (Standard deviation)
คามธยฐาน (Median) และคา Interquartile Range (Q3 – Q1)
คาเปอรเซนไทล (Percentile) ตาง ๆ เชน P10, P25=Q1, P50=Q2=Median, P75, P90 เปนตน
กราฟ: ฮสโตรแกรม (histogram) แสดงการแจกแจง (distribution) ของขอมล หรอ box plot (แสดงคา Q1, Q2=Median, Q3)
13
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Workshop 3: ใชโปรแกรม R หาคาสถตเบองตนของโจทย “การฝกงานของนสต” ขอมลอยในไฟล DataAll และสรางตวแปรใหม
1. เปดโปรแกรม R โดยดบเบลคลก บน desktop มาท างาน
2. เลอก Packages > Load package (รปซาย) แลวเลอก Rcmdr (รปขวา)
จะได R Commander ซงเปนเมนทผกฟงกชนการท างานของโปรแกรมค านวณคาสถตตาง ๆ (เหมอนเมนของ SPSS) ท าใหงายตอการใชงาน
14
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. อานขอมล Excel ดวยค าสง Data > Import data > from Excel, ..
ตงชอ dataset เปน DataAll แลวกด OK
15
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
เลอกไฟล DataAll.xlsx จาก CD (เลอกไฟล type เปน MS Excel 2007 file (.xlsx) แลวเลอก Sheet DataAll จะได
หนาจอการท างานของโปรแกรม R จะแบงเปน 3 สวนคอ
R Script เปนค าสง R จากเมนทเลอก Output แสดงผลลพธการประมวลผล Messages แสดงขอความส าหรบการท างานนน (อานขอมลเขา 996 rows 35 columns)
ถาเกด error ขอความกจะเปนสแดง
หมายเหต: R Markdown เปน feature ใหมใน version น (ยงไมไดทดสอบการใชงาน) ไมเกยวกบการประมวลผลทางสถต
4. ดขอมลโดยกดป ม ถาไมมขอมล (missing value) R จะแทนดวยอะไร? …………
5. Clear window (ท าเปนครงคราวตามตองการ) โดยคลกขวาท window ทตองการ clear เลอก Clear window
16
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6. หาคาสถตเบองตน (descriptive statistics) ของแตละตวแปรเพอสรปลกษณะของขอมล Qualitative variables: GENDER, ORG_SIZE, PAY, Letter, Stamp ดวยการหาการแจงแจงความถ (จ านวนและรอยละ) ดวยค าสง Frequency distributions และแสดงกราฟวงกลม ดวยค าสง Pie Chart Quantitative variables: GPA, DAYS, HOURS, CP121, , CP444, WSK1, , WSK6, USK1, USK6 ดวยการหาคากลางและคาการกระจาย ดวยค าสง Numerical summaries
ส าหรบ Qualitative variables:
6.1 เลอกค าสง Statistics > Summaries > Frequency distributions จะได
จะเหนไดวามแค 3 ตวแปร ทเปน factor (ใน R ตวแปร character จะเปน factor โดยอตโนมต) ไม
มตวแปร Letter และ Stamp เนองดวยคาของตวแปรเปนตวเลข (จาก Excel) R เลยใหชนดเปน numeric
6.2 แปลงตวแปร Letter, Stamp ใหเปน factor ดวยค าสง Data > Manages variables in active data set > Convert numeric variables to factors
Variables: เลอก Letter Factor Levels: เลอก Supply level names New variable name …..: เลอก default คอ <same as variables> คอชอเดม หรอจะตงชอใหม ตงใหมเปน Letter_F
กด OK
17
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ใสชอคาของขอมล (Numeric value Level name) ดงภาพ แลวกด OK
ลอง ด จะได
ขอมลของแตละคอลมนจะไมตรงเนองจากการแสดงผลภาษาไทย
แปลงตวแปร Stamp ใหเปน factor โดยใช Use Number ส าหรบ Factor Levels และแทนทตวแปรเดม (<same as variables>) เพอความรวดเรว หรอจะตงชอตวแปรใหมเปน Stamp_F หมายเหต ถาเราตองการใชตวแปรเดมทเปน numeric เราตองสรางตวแปรใหมใหเปน factor จะไดมตวแปร 2 ตว เลอกใชไดตามความเหมาะสม
หมายเหต ใน R ม data type ไดหลายแบบ ไดแก scalars, vectors (numerical, character, logical), matrices, data frames, and lists. ซง data frame กคอชนดขอมลทเปนตาราง (table หรอ relation) นนเอง คอแตละคอลมนจะเปนตวแปร ซงจะมชนดเปน numeric หรอ character (ซงกคอ string) ถาขอมลเปน character R จะถอเปนnominal อตโนมตแลวให type เปน factor สวนตวแปรทเปน numeric ถาจะใหเปน factor กตองด าเนนการ ดงตวอยางขางตน
18
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6.3 เลอกค าสง Statistics > Summaries > Frequency distributions ใหม เลอกตวแปรทงหมด (5 ตว)
คลก OK จะได R Scrip Output local({ .Table <- with(DataAll, table(Stamp_F)) cat("\ncounts:\n") print(.Table) cat("\npercentages:\n") print(round(100*.Table/sum(.Table), 2))
counts: Stamp_F 0 1 58 12 percentages: Stamp_F 0 1 82.86 17.14
local({ .Table <- with(DataAll, table(GENDER)) cat("\ncounts:\n") print(.Table) cat("\npercentages:\n") print(round(100*.Table/sum(.Table), 2)) })
counts: GENDER ชาย หญง 40 32 percentages: GENDER ชาย หญง 55.56 44.44
หมายเหต หากขอมลมมากกวา 3 คา การแสดง value label ทเปนภาษาไทยจะเรยงตามตวอกษร ถาขอมลเปน Ordinal จะสบสน เพราะมนจะไมเรยงอนดบให หากตองการใหเรยงอนดบกควรใส 1_, 2_, 3_, … ไวขางหนา
19
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6.4 แสดงกราฟพายดวยค าสง Graphs > Pie Chart ของตวแปร Letter_F ตาม default ได
ใหระวงและสงเกตวาผลลพธของกราฟจะแสดงอยใน RGUI ดงนนตองยบหนาตาง R Commnader กอน
ลองเรยก Pie Chart อกครง
คลกท เพออานเอกสารวาจะมการปรบแตงอะไรไดบาง
20
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ส าหรบ Quantitative variables:
6.5 เลอกค าสง Statistics > Summaries > Numerical summaries แลวเลอกกลมวชา CP… ตาม default จะใหคา Statistics เปน Mean, Standard Deviation, Quantiles: 0, .25, .5, .75, 1
R Scrip:
numSummary(DataAll[,c("CP111", "CP121", "CP201", "CP212", "CP241", "CP251", "CP316", "CP322", "CP323", "CP342", "CP352", "CP431", "CP444", "CP445", "CP482")], statistics=c("mean", "sd", "IQR", "quantiles"), quantiles=c(0,.25,.5,.75,1))
Output:
21
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
7. สรางตวแปรตวใหมเพอวด “ระดบความรทใช” ตงชอวา CP_All โดยเปนคาเฉลยของ CP ทงหมด
เลอกค าสง Data > Manage variables in active data set > Compute new variable
Expression to compute = (CP111+ CP121+ CP201+ CP212+ CP241+ CP251+ CP316+ CP322+ CP323+ CP342+ CP352+ CP431+ CP444+ CP445+ CP482)/15
(ให double click ตวแปรทตองการ)
ลอง View Data Set เพอดคาตวแปรตวใหม ตองมคาอยระหวาง 1 – 5
8. ลอง plot กราฟ ของตวแปรเชงปรมาณ ดวย histogram และ box plot
ค าสง: Graphs > Histogram (รปซาย หรอ Graphs > Boxplot (รปขวา)
และหากจะส าเนากราฟกคลกขวาทรปแลวเลอก Copy as bitmap
22
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
9. หาคาสถตเบองตนของ CP_All ค าสงทใช ……………………………………………………………... และใหผลสรป Script & Output
ถาใหความหมายของ Rating scale 5 ระดบ เปน 1=นอยทสด, 2=นอย, 3=ปานกลาง, 4=มาก, 5=มากทสด กจะไดเกณฑการประเมน 2 แบบ คอ แบบท 1: ใชคากลางในการใหความหมาย จะไดเกณฑดงรปซาย ซงชวงของหวทายจะไมเทาชวงตรงกลาง แบบท 2: ใชแบบชวงเทาในการใหความหมาย คอ แบง max – min ออกเปน 5 ชวงเทา ๆ กน (ชวงละ .8) จะไดเกณฑดงรปขวา
1.00 – 1.50 = นอยทสด 1.51 – 2.50 = นอย 2.51 – 3.50 = ปานกลาง 3.51 – 4.50 = มาก 4.51 – 5.00 = มากทสด
1.00 – 1.80 = นอยทสด 1.81 – 2.60 = นอย 2.61 – 3.40 = ปานกลาง 3.41 – 4.20 = มาก 4.21 – 5.00 = มากทสด
แบบฝกหด ลองสรางตวใหมตวใหม เพอวด “ดานความรและทกษะการท างาน” WSK และ “ดานอตลกษณนสตของมหาวทยาลย – มทกษะการสอสาร” USK วาอยในระดบใด
10. จดเกบผลลพธการท างานไวใชในโอกาสตอไป ใน R Commander: File > Save R Workspace as ตงชอไฟลวา Training
จะไดไฟล type เปน R Data Files
หากตองการกลบมาใชงานใหม
ใน R Commander Data > Load data set
23
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การทดสอบสมมตฐานทางสถต
การทดสอบสมมตฐานทางสถตเปนกระบวนสรปความจรงเกยวกบประชากร (population) โดยศกษาจากกลมตวอยาง (sample) ทเปนตวแทนของประชากร สถตทใชจะเรยกวาสถตอนมาน (inferential statistics)
ขนตอนการทดสอบสมมตฐานทางสถต (Hypothesis Testing Template)
1. สมมตฐานททดสอบ H0 และ H1 (คณลกษณะของประชากร ตองเปนพารามเตอรเสมอ) H0: .......... H1: ..........
2. ก าหนดระดบนยส าคญของการทดสอบ α = ....... (ปกตจะเปน .05 หรอ .01 หรอ .10) 3. เลอกสถตทเหมาะสมกบสมมตฐานททดสอบในขอ 1
สถตนคอสถตอนมาน/สถตอางอง และตวสถตนมการแจกแจงความนาจะเปนแบบใด? Z = .....(สตร)..... มการแจกแจงแบบ Z (ปกตมาตรฐาน) t = .....(สตร)..... มการแจกแจงแบบ t ท df = ....... X2 = .....(สตร)..... มการแจกแจงแบบ X2 ท df = ....... F = ......(สตร).... มการแจกแจงแบบ F ท df1 = .... และ df2 = ......
4. กฏการตดสนใจ ปฏเสธ H0 ถา p-value < α 5. ค านวณคาสถตจากกลมตวอยาง (โปรแกรมส าเรจรปจะให p-value ดวย)
เชน t = .......... p-value = ........... 6. ตดสนใจ ตความและใหความหมาย
ตดสนใจ: ปฏเสธ H0 / ไมปฏเสธ H0 ตความและใหความหมาย .................
อธบายเพมเตม 2. ระดบนยส าคญของการทดสอบ หรอ Type I error คอ ความนาจะเปนทปฏเสธ H0 แต H0 เปนจรง ความจรงเกยวกบสมมตฐานททดสอบ (Actual/Model) การตดสนใจ (Predicted/Test)
H0 เปนจรง (Positive)
H0 เปนเทจ (Negative)
ไมปฏเสธ H0 / H0 เปนจรง (Positive)
ตดสนใจถก (True Positive: TP) Confidence Level (1 – α)
ตดสนใจผด (Type II error = β) (False Negative: FN)
ปฏเสธ H0 / H0 เปนเทจ (Negative)
ตดสนใจผด (Type I error = α) (False Positive: FP)
ตดสนใจถก True Negative: TN) Power of the test (1 – β)
24
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. การแจกแจงความนาจะเปนของสถตทดสอบ และคาวกฤตทระดบ α = .05
P(Z < -1.96 และ Z > 1.96) = 0.05
P(t < -2.05 และ t > 2.05) = 0.05
P (X2 > 5.99) = 0.05
P (F > 3.13) = 0.05
4. กฎการตดสนใจ
แบบเดม: หาคาวกฤต โดยเปดตารางการแจกแจงของขอ 3 เชน ส าหรบการแจกแจงแบบ Z คาวกฤตคอ -1.96 และ 1.96 บรเวณวกฤตคอ Z < -1.96 และ Z > 1.96 ปฏเสธ H0 ถา คาสถตในขอ 3 ตกอยในบรเวณวกฤต (บรเวณปฏเสธ) ซงมความนาจะเปน = α แบบใหม: ใชคาพ (p-value) (คอความนาจะเปนจากคาสถตจนถงหางของการแจกแจง) เชน ถา Z = 2.00 p-value คอ P(Z >= 2.00) + P(Z <= 2.00) = 0.02275013 + 0.02275013 = 0.0455
6. ถาการตดสนใจเปน ปฏเสธ H0 เรยกวา การทดสอบมนยส าคญ (the test is significant) แสดงวา H0 (ความรเดม) ไมจรง H1 จรง (H1 คอความรใหมทนกวจยคนพบ) ดงนนเปาหมายของการวจยคอ การปฏเสธ H0 ซงกคอตองการใหการทดสอบมนยส าคญ ซงตางจากการทดสอบขอตกลงเบองตน (assumption) เชน การทดสอบ Normal distribution หรอการทดสอบการเทากนของ Variance คอไมตองการปฏเสธ H0
25
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Workshop 4: การแจกแจงความนาจะเปนแบบตาง ๆ การหาคาวกฤตทระดบนยส าคญตาง ๆ และการหา
คาพ (p-value) 1. Plot การแจกแจงความนาจะเปนของการแจกแจงปกตมาตรฐาน N(0,1)
Distributtion > Continuous distributions > Normal distribution > Plot normal distribution
2. หาคาวกฤต (คาสถต) ทระดบนยส าคญตาง ๆ (α) Distributtion > Continuous distributions > Normal distribution > Normal quantiles
Probabilities คอคา α (one tail) ผลลพธทไดคอคาวกฤต (คาสถต) Script & Output
หากตองการคาวกฤตของ α 2 tails ตองหาร 2 คอตองใส Probabilites = .025 จะได -1.959964
หรอ -1.96 ลองด าเนนการดวยคา α อน ๆ สรป P(Z < -1.96 and Z > 1.96) = 0.05
P(Z < -1.64 and Z > 1.64) = 0.10 P(Z < -2.58 and Z > 2.58) = 0.01
26
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. หาคาพ (p-value) จากคาสถตทค านวณได Distributtion > Continuous distributions > Normal distribution > Normal probabilities
ผลลพธทไดคอคาพ (p-value) ของคาสถตทใสใน Variable value(s)
Script & Output
ดงนน p-value ของ 3.00 one tail คอ 0.001349898 ถาตองการ 2 tails ตองคณ 2 จะได 0.002699796 สามารถลองเลนกบ distribution อน ๆ เชน t distribution, Chi-squared distribution, F distribution
การแจกแจงแบบปกต
โดยธรรมชาตแลวขอมลเชงปรมาณสวนใหญจะมการแจกแจงแบบปกต (Normal distribution) เชน X1, X2, X3, …. เปนคาของขอมลของกลมตวอยางทมาสมมาจากประชากรทมการแจกแจงปกต เขยนสญลกษณ Xi ~ N (µ, 2
) และ คาเฉลยของ X คอ x ซงจะมการแจกแจงแบบ N (µ, 2/N)
การแจกแจงแบบปกตเปนขอตกลงเบองตนของสถตพาราเมตรก (parametric statistics) หากขอมลไมมการแจกแจงแบบปกตกตองไปใชสถตแบบนอนพาราเมตรก (nonparametric statistics)
การท า transformation ของขอมลอาจจะมความจ าเปนในบางกรณในกระบวนการวเคราะหขอมลดวย data mining ทส าคญ 2 อยางคอ การท าใหเปนปกตมาตรฐาน (standardization) และการ normalization เพอใหคาของตวแปรอยในมาตรวดเดยวกน
การท าใหเปนปกตมาตรฐานคอการลบดวยคาเฉลยและหารดวยคาเบยงเบนมาตรฐาน คาปกตมาตรฐานจะมคาเฉลยเปน 0 และคาเบยงเบนมาตรฐานเปน 1 ซงหลกการนเปนหลกการทส าคญในสถตอนมาน
27
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การ normalization คอการทท าใหขอมลมคาอยระหวาง 0 และ 1 ท าไดโดยลบขอมลดวย min และหารดวย max – min
Workshop 5 จงทดสอบวา CP_All มการแจกแจงปกตหรอไม
Statistics > Summaries > Shapio-Wilk test for normality เลอก Variable > CP_All Script & Output
การทดสอบสมมตฐานทางสถต 1. สมมตฐานททดสอบ H0 และ H1
H0: CP_All มการแจกแจงแบบปกต H1: CP_All ไมมการแจกแจงแบบปกต
2. ก าหนดระดบนยส าคญของการทดสอบ α = 0.05 3. สถตทดสอบ
Shapiro-Wilk test for normality 4. กฏการตดสนใจ ปฏเสธ H0 ถา p-value < α 5. ค านวณคาสถตจากกลมตวอยาง
คาสถต W = 0.9796 p-value = 0.292 6. ตดสนใจ ตความและใหความหมาย
ไมปฏเสธ H0 CP_All มการแจกแจงปกต
28
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ทดสอบคาเฉลยของประชากร 1 กลม
การหา 95% ชวงความเชอมนของ µ = x ± t0.025*SD/sqrt(N)
Workshop 6: จงหา 95% ชวงความเชอมนของคาเฉลยของ CP_All (1 sample t-test)
ค าสง: Statistics > Mean > Single-Sample t-test ใสคา Null hypothesis mu = 2.549074
Script & Output
95% ชวงความเชอมนของคาเฉลยของ CP_All
จงทดสอบใหเหนจรง โดยการแทนคาในสตร 2.549074 ± 1.993943*(0.8238611/sqrt(72)) = 2.549074 ± 0.193598
29
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ทดสอบความแตกตางของคาเฉลยของประชากร 2 กลม
Workshop 7: นสตหญงและนสตชายประเมนการใชความรทเรยนในชนเรยนกบการท างาน (CP_All) แตกตางกนหรอไม หมายเหต 1. ตวแปรทเราตองการจะศกษา/ตองการทจะทดสอบ (CP_All) เรยกวาตวแปรตาม (Dependent variable) ตวแปรกลม (GENDER) เรยกวาตวแปรตน (Independent variable) หรอตวแปรกลม (Group variable)
หมายเหต 2. ใน Data warehouse Measure attribute กคอ Dependent variable และ Dimension attribute กคอ Independent variable หรอ Group variable นนเอง
1. หาคาสถตพรรณนา Mean, SD, N ของ CP_ALL ของกลม ชาย และ หญง
ค าสง: Statistics > Summaries > Numerical Summaries (ซาย) คลก Summarize by groups (ขวา)
เลอก GENDER
Script & Output
ใหสงเกตวา ผลลพธขางตน กคอ เมเชอร 8 ตว (mean, sd, IQR, 0%, 25%, 50%, 75%, 100%, data:n) ซง data:n aggregation function คอ count นนเอง สวนเมเชอรตวอน ๆ กคอ CM (Calculated Member)
2. ทดสอบคาเฉลย 2 คา
ค าถาม แบบท 1: Mean ของ CP_All ของชาย (2.660000) และของหญง (2.410417) แตกตางกนอยางมนยส าคญหรอไม?
ค าถาม แบบท 2: Mean ของ CP_All ของชาย และของหญง แตกตางกนหรอไม?
ในแบบท 1 Mean คอ Sample Mean (xชาย และ xหญง)
30
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ในแบบท 2 Mean คอ Population Mean (µชาย และ µหญง)
คนหาค าตอบดวยการทดสอบ Independent samples t-test ค าสง: Statistics > Means > Independent samples t-test
ซง Independent samples t-test ม 2 สตร คอ สตร Variances เทา และ ไมเทา ดงนนจงตองทดสอบ Variances กอน
3. ทดสอบ Variance 2 คา
ค าสง: Statistics > Variances > Lavene’s test
มสถตใหเลอก 3 ตว คอ 1. Two-variances F-test 2. Bartlett’s test 3. Levene’s test
1 และ 2 มสตรค านวณปรากฏในต าราสถตพนฐานทวไป 3. SPSS ใชตวน
31
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Script & Output
ทดสอบสมมตฐานในใจ: p=value = 0.1332 แสดงวาไมปฏเสธ H0, H0 คอ Variances เทา
ดงนน สรปไดวา Variance เทา
4. ทดสอบคาเฉลย 2 คา โดยใช Independent samples t-test สตร Variance เทา ค าสง: Statistics > Means > Independent samples t-test (ใน Options: Assume equal variances? = Yes)
Script & Output
32
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การทดสอบสมมตฐานทางสถต 1. สมมตฐานททดสอบ H0 และ H1
H0: µชาย = µหญง หรอ µชาย - µหญง = 0 เมอ µ คอคาเฉลยของ CP_All H1: µชาย ≠ µหญง หรอ µชาย - µหญง ≠ 0
2. ก าหนดระดบนยส าคญของการทดสอบ α = 0.05 3. สถตทดสอบ
Independent samples t-test
t = (��1−��2)
√(𝑛1−1)𝑠12+(𝑛2−1)𝑠22
𝑛1+𝑛2−2(
1
𝑛1+
1
𝑛2)
มการแจกแจงแบบ t ท df = 40+32 -2 = 70 เมอ H0 เปนจรง
4. กฏการตดสนใจ ปฏเสธ H0 ถา p-value < α 5. ค านวณคาสถตจากกลมตวอยาง
คาสถต t = 1.2831 p-value = 0.2037 6. ตดสนใจ ตความและใหความหมาย
ไมปฏเสธ H0 ค าตอบแบบท 1: Mean ของ CP_All ของชาย และของหญง แตกตางกนอยางไมมนยส าคญ ค าตอบแบบท 2: Mean ของ CP_All ของชาย และของหญง ไมแตกตางกน
หมายเหต Independent samples t-test เปนสถตพาราเมตรก ซงมขอตกลงเบองตนวาขอมลของประชากร 2 กลมตองมการแจกแจงปกต หากขอตกลงเบองตนนไมเปนจรง ตองไปใชสถตนอนพาราเมตรกทคกน ดวยค าสง Statistics > Nonparametric tests > Two-sample Wilcoxon test การด าเนนการและการแปลผลใชหลกการเหมอนกน
33
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ทดสอบความแตกตางของคาเฉลยของประชากร 3 กลม
Workshop 8: นสต 3 กลม ทม GPA 3 ระดบคอ ต า (< 2.50) ปานกลาง (2.50 – 2.99) สง (>= 3.00) ประเมนการใชความรทเรยนในชนเรยนกบการท างาน (CP_All) แตกตางกนหรอไม (One Way ANOVA)
1. สรางตวแปรตวใหม (transformation) ชอ GPA_GP โดยแปลงคา GPA ทมคาตอเนองใหมคาเปน 3 กลม (discretization) ตามโจทย
ค าสง: Data > Manages variables in active data set > Recode variables
หมายเหต หากไมทราบวาจะ Enter recode directives อยางไร ใหกดป ม Help
Script
34
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Output (View data set)
2. ตรวจสอบผลการ Discritization
ค าสง: Statistics > Summaries > Frequency distributions
3. หาคาสถตพรรณนา Mean, SD, N ของ CP_ALL ของ 3 กลม (GPA_GP)
ค าสง: Statistics > Summaries > Numerical Summaries Variables: เลอก CP_All, Summarize by groups: เลอก GPA_GP, Statistics เลอก Mean, Standard Deviation
35
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Script & Output
4. One Way ANOVA มขอตกลงเบองตนวา Variance ของ 3 กลมตองเทากน ถาไมเทาตองไปใช Nonparametric ทคกน ผลการทดสอบ Variance เทา ดงนนจงใช One Way ANOVA ได (ลองทดสอบ)
ค าสง: Statistics > Means > One-way ANOVA (เลอก Pairwise comparisons of means)
Script & Output
36
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
37
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การทดสอบสมมตฐานทางสถต
1. สมมตฐานททดสอบ H0 และ H1 H0: µ1 = µ2 = µ3 เมอ µi คอคาเฉลยของ CP_All ของ GPA_GP แตละกลม (ต า, กลาง, สง) H1: ม µi ≠ µj อยางนอย 1 ค (มกค?)
2. ก าหนดระดบนยส าคญของการทดสอบ α = 0.05 3. สถตทดสอบ
One way ANOVA (ANalysis Of Variances)
F = 𝑀𝑆𝑏
𝑀𝑆𝑤 =
𝑆𝑆𝑏/ (𝑘−1)
𝑆𝑆𝑤/(𝑁−𝑘) ; มการแจกแจงแบบ F ท df = 3-1=2 และ df = 72-3 =69 (~F2,69)
เมอ H0 เปนจรง 4. กฏการตดสนใจ ปฏเสธ H0 ถา p-value < α 5. ค านวณคาสถตจากกลมตวอยาง
คาสถต F = 0.967 p-value = 0.385 6. ตดสนใจ ตความและใหความหมาย
ไมปฏเสธ H0 คาเฉลยของ CP_All ของนสต 3 กลม (GPA_GP) ไมแตกตางกน ซงสอดคลองกยการเปรยบเทยบรายค (Miltiple Cpmparisons of Means) ดวยวธ Tukey ไมมคใดทแตกตางกน ดงนนคาเฉลยของทกกลมจะอยใน set เดยวกน (สญลกษณ “a”)
หมายเหต One-way ANOVA เปนสถตพาราเมตรก ซงมขอตกลงเบองตนวาขอมลของประชากรทกกลมตองมการแจกแจงปกต และความแปรปรวนของประชากรทกกลมตองเทากน หากขอตกลงเบองตนนไมเปนจรง ตองไปใชสถตนอนพาราเมตรกทคกน ดวยค าสง Statistics > Nonparametric tests > Kruskal-Wallis test การด าเนนการและการแปลผลใชหลกการเหมอนกน
38
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ทดสอบความเปนอสระของตวแปรเชงคณลกษณะ
Workshop 9: การออกใบรบรองการฝกงาน (Letter) เปนอสระหรอสมพนธกบขนาดขององคกรทฝกงาน (ORG_SIZE) (Chi-square test for independent)
1. หาคาสถตพรรณนา จะไดเปนตารางแจกแจงความถ 2 ทาง (Cross tab หรอ Table)
ค าสง: Statistics > Contingency tables > Two-way tables
Script & Output
39
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
หมายเหต ใหสงเกต ใน WARNING: ส าหรบการทดสอบไค-สแคว คาความถควรตองมจ านวน > 5
การทดสอบสมมตฐานทางสถต 1. สมมตฐานททดสอบ H0 และ H1
H0: Letter และ ORG_SIZE เปนอสระตอกน (คอไมมความสมพนธกน) H1: Letter และ ORG_SIZE ไมเปนอสระตอกน (คอมความสมพนธกน)
2. ก าหนดระดบนยส าคญของการทดสอบ α = 0.05 3. สถตทดสอบ: Chi-square test for independence
χ² = ∑(𝑂𝑖−𝐸𝑖)2
𝐸𝑖
𝑘𝑖=1 ; 𝐸𝑖 = 𝑛𝑝𝑖 มการแจกแจงแบบ χ² ท df = 2 เมอ H0 เปนจรง
4. กฏการตดสนใจ ปฏเสธ H0 ถา p-value < α 5. ค านวณคาสถตจากกลมตวอยาง
คาสถต X-squared = 6.9529 p-value = 0.03092 6. ตดสนใจ ตความและใหความหมาย
ปฏเสธ H0 การออกใบรบรองการฝกงาน (Letter) ไมเปนอสระหรอมสมพนธกบขนาดขององคกรทฝกงาน (ORG_SIZE)
2. Save active data set ไวใชงานตอไป ค าสง: Data > Active data set > Save active data set
40
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ทดสอบความสมพนธของตวแปรเชงปรมาณ
ความรและทกษะในการปฏบตงาน (WSK), อตลกษณนสต “ทกษะการสอสาร” (USK), GPA มความสมพนธกนหรอไม (Correlation)
Pearson correlation ส าหรบขอมลทมการแจกแจงปกต
Spearman rank correlation ส าหรบขอมลทไมมการแจกแจงปกต
Workshop 10:
1. Load data set Training2 มาใชงาน (มตวแปร WSK และ USK แลว) 2. ทดสอบวา WSK, USK, GPA มการแจกแจงปกตหรอไม
ผลการทดสอบ: WSK, USK ไมมการแจกแจงปกต, GPA มการแจกแจงปกต 3. หาความสมพนธ
ค าสง: Statistics > Summaries > Correlation test
Script & Output
41
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
สรป: ตวแปรทสมพนธกนมเพยงคเดยวคอ WSK และ USK สมประสทธสหสมพนธ (Correlation coefficient) = 0.7722563
เมอทดสอบสมมตฐานทางสถตจะสรปไดวา ความสมพนธไมเปนศนย
4. ทดสอบวาคาเฉลย WSK กบ USK แตกตางกนหรอไม (Paired t-test)
ค าสง: Statistics > Means > Paired t-test
42
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Script & Output
สรป ทกษะไมแตกตางกน
หมายเหต Paired t-test เปนสถตพาราเมตรก ซงมขอตกลงเบองตนวาผลตางของขอมล (paired) ของประชากร ตองมการแจกแจงปกต หากขอตกลงเบองตนนไมเปนจรง ตองไปใชสถตนอนพาราเมตรกทคกน ดวยค าสง Statistics > Nonparametric tests > Paired-samples Wilcoxon test การด าเนนการและการแปลผลใชหลกการเหมอนกน
43
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การพยากรณหรอการวเคราะหการถดถอย (Regression)
การวเคราะหการถดถอยเปนการพยากรณตวแปรทสนใจ (ตวแปรตาม/dependent variable 1 ตว) หรอเปนการอธบายความแปรปรวนของตวแปรทสนใจ ดวยตวพยากรณหรอตวอธบาย (predictor/explainatory/independent variables หลายตว) โดยทตวแปรตนและตวแปรตามตองมความสมพนธกนแบบเชงเสนอยางมนยส าคญ ตวแปรทงหมดตองมระดบการวดเปน scale หากเปนตวแปร nominal ตองม 2 คาเทานน หากมมากกวา 2 คาตองมการท าเปน dummy variables วธการนเรยกวา Multuple Linear Regression และมขอตกลงเบองตนวาตวแปรตามทระดบตาง ๆ ของตวแปรตนตองมการแจกแจงแบบปกต และมความแปรปรวนเทากน หากตรวจสอบขอตกลงเบองตนนไมเปนจรงอาจจะตองท าการ Transformation ขอมล
หากตวแปรตามเปน nominal จะตองใชวธ Logistic Regression
Workshop 11: หา Linear Regression Model ของ CPU data set (จาก Weka data set)
1. อานไฟล cpu.xls เขามาดวยค าสง ………….
2. View data set จะได
โจทย สรางโมเดลหรอสมการพยากรณ ประสทธภาพของการประมวลผลของ CPU ดวยคณลกษณะของคอมพวเตอร
Depdendent variable คอ class (ประสทธภาพ)
Predictor variables: MYCT, MMIN, MMAX,CACH, CHMIN, CHMAX ทงหมด 6 ตว
มขอมลทงหมด 209 รายการ
ตวแปรทงหมดเปน scale
ค าถาม: ตวแปรทกตวมการแจกแจงแบบปกตหรอไม?
ตว predictor แตละตวมความสมพนธเชงเสนกบตวแปร class หรอไม?
3. ทดสอบการแจกแจงปกต สมมตวาทกตวมการแจกแจงแบบปกต
44
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
4. ทดสอบวาตวแปร class มความสมพนธกบตว predictor แตละตวแบบเชงเสน ค าสง: Graphs > Scratterplot
Script & Output
45
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
5. สมมตตวแปร predictor ทกตวมความสมพนธแบบเชงเสนกบ class หาความสมพนธระหวาง predictors แตละตวกบ class Predictor r t, df p-value CASH 0.6626414 12.7297, 207 < 2.2e-16 CHMAX 0.6052093 10.9381, 207 < 2.2e-16 CHMIN 0.6089033 11.044, 207 < 2.2e-16 MMAX 0.8630041 24.5775, 207 < 2.2e-16 MMIN 0.7949313 18.8513, 207 < 2.2e-16 MYCT -0.3070994 -4.6427, 207 = 6.102e-06
หมายเหต 𝑡 = 𝑟∗ √𝑁−2
1−𝑟2
โดยปกตแลวตว predictors กจะมความสมพนธกนเอง ลองหาความสมพนธของตวแปรทงหมดดวย ค าสง: Statistics > Summaries > Correlation matrix เลอก Pairwise p-value
Script & Output
46
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6. หา Regression Model (Explanatory variables ทกตว ยกเวน class ซงเปน Response variable) ค าสง: Statistics > Fits models > Linear Regression
Script & Output
47
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ค าสง: Models > Stepwise model selection
Script & Output
48
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Regression Model ทไดคอ class = -56.075 + 0.630*CASH + 1.460*CHMAX + 0.006*MMAX + 0.015*MMIN + 0.049*MYCT
Model นมความแมนย าเทาใด? Multuple R-squared = 0.8649? ลองทดสอบ Model ในสวนอน
49
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
สรปค าสง R (version 3.1.2)
การจดการขอมล การอานขอมลจากไฟล Excel การสรางตวแปรตวใหม
Data > Import data > from Excel Data > Manage variables in active data set > Compute new variable
การเปลยนแปลงคาตวแปร Data > Manages variables in active data set > Recode variables การแปลงตวแปร numeric ใหเปน factor และการใหชอคาของตวแปร (value label)
Data > Manages variables in active data set > Convert numeric variables to factors
การจดเกบไฟลขอมล R Data > Active data set > Save active data set การเปดไฟลขอมล R Data > Load data set สถตส าหรบตวแปรเดยว ตวแปรเชงคณลกษณะ การแจกแจงความถ Statistics > Summaries > Frequency distributions กราฟแทงและกราฟพาย Graphs > Bar graph / Pie Chart ตวแปรเชงปรมาณ คาสถตเบองตน (N, Mean และ SD) กราฟฮสโตแกรม
Statistics > Summaries > Numerical summaries Graphs > Histogram
การแจกแจงความนาจะเปนแบบตาง ๆ เชน การแจกแจงปกต (Normal distribution) การหาคาวกฤต เมอก าหนดระดบนยส าคญ การหาคาพ (p-value) ของคาสถต
Distributtion > Continuous distributions > Normal distribution > Plot normal distribution Normal quantiles Normal probabilities
การทดสอบการแจกแจงปกต Statistics > Summaries > Shapio-Wilk test for normality การทดสอบคาเฉลย Statistics > Mean > Single-Sample t-test สถตส าหรบสองตวแปร การเปรยบเทยบคาความแปรปรวน 2 คา การเปรยบเทยบคาความแปรปรวน > 2 คา
Statistics > Variances > Two-variances F-test Statistics > Variances > Bartlett’s test / Levene’s test
การเปรยบเทยบคาเฉลย 2 คา (Independent Samples)
Statistics > Means > Independent samples t-tes Statistics > Nonparametric tests > Two-sample Wilcoxon test
การเปรยบเทยบคาเฉลย 2 คา (Paired Samples) Statistics > Means > Paired t-test Statistics > Nonparametric tests > Paired-samples Wilcoxon test
การเปรยบเทยบคาเฉลย 2 คาหรอมากกวา (Independent Samples)
Statistics > Means > One-way ANOVA Statistics > Nonparametric tests > Kruskal-Wallis test
การแจกแจงความถสองทางและการทดสอบความเปนอสระของตวแปร 2 ตว
Statistics > Contingency tables > Two-way tables
การหากราฟความสมพนธของ 2 ตวแปร Graphs > Scratterplot การหาความสมพนธของ 2 ตวแปร Statistics > Summaries > Correlation test / Correlation matrix การวเคราะหการถดถอย Statistics > Fits models > Linear Regression
Models > Stepwise model selection
50
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การท าเหมองขอมลดวย Weka (Data Mining with Weka)
สณ รกษาเกยรตศกด
การตดตง Weka
1. Download โปรแกรมท http://www.cs.waikato.ac.nz/ml/weka/downloading.html 2. ดลเบลคลกเพอตดตง
ในทนจะใช version 3.7.11 (Book version 3.6) ตดตงตาม default และ Next
จนถง
51
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. Install JRE
กดป ม Install
52
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
4. ตดตงเรยบรอย
53
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การเรยกใช Weka
1. All Programs > Weka 3.7
หรอ ส าเนา short cut Weka 3.7 มาไวบน desktop เพอสะดวกในการเรยกใช ดบเบลคลก Weka ไอคอน มาท างาน จะเกด
คลก Do not show this message again แลวคลก OK
54
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Weka GUI Chooser
ม Interface การท างาน 4 แบบ
1. Explorer
55
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
2. Experimenter
3. KnowledgeFlow
56
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
4. Simple CLI
57
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Weka_Workshops
สณ รกษาเกยรตศกด
WS#1: Numeric Prediction
Data set: cpu (Weka_data จะมไฟล format เปน .arff)
58
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
1. Preprocess > Open file เลอก cpu
ได
2. แอททรบวตตวสดทายจะเปนตวแปร class หากตองการใหตวแปรอนเปนตวแปร class ให Edit แลวคลกขวาตวแปรทตองการ เลอก Attribute as class ตวแปรนนกจะมาอยเปนตวสดทาย และแสดงเปน
59
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
ตวหนา หมายเหต จะใชวา แอททรบวต หรอ ตวแปร กได
ถาตองการไดไฟลลง Excel ก ctrl+A (Select All) แลวไป paste ลงใน Excel แลวเพมบรรทดแรกเปนชอตวแปร
60
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. Weka จะสรปคา descriptive statistics ของแตละตวแปรให พรอมแสดงกราฟ (histogram) หรอคลก Visualize All เพอด histogram ของตวแปรทกตวพรอมกน
4. Visualize scatter plot (ตวแปร 2 ตว) โดยคลกทแทบ Visualize
.
61
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
5. Fit linear regressiom model Classify > Choose Classifier = functions > Linear Regression Test options = Use training ser (default)
กด Start จะไดผลลพธ
62
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6. การแปลผล 6.1 Model: Class/PRP = -56.075 + 0.0491*MYCT + 0.0152*MMIN + 0.0056 *MMAX
+ 0.6298*CACH + 1.4599*CHMAX ตวแปรใดทไมเขาในโมเดล?
6.2 Evaluation: Correlation coefficient R=0.93 or R2=0.8649
ตวแปร predictor 5 ตว คอ MYCT, MMIN, MMAX, CACH, CHMAX สามารถอธบายความแปรปรวนของตวแปร Class/PRP ไดประมาณ 81%
6.3 Deployment: เครองคอมพวเตอรเครองใหม 1 เครอง มคณสมบตดงน MYCT=200, MMIN=1000,
MMAX=2000, CASH=0, CHMAX=64 จะมประสทธภาพ (PRP) = 73.58
คลกขวาท Result แลว Save model
7. ใหทดสอบทง 3 test options จะไดวา Weka ใช full training set ในการสรางโมเดล ซงผลลพธของโมเดลจะเหมอนกน ซงสอดคลองกบ Stepwise Regression ใน SPSS และใน R แตผลลพธของ Evaluation จาก Correlation coefficient ของทง 3 test mode คอ 1) Use training set, 2) Cross-validation (10 folds), 3) Percentage split (66%) จะไมเทากน
63
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
WS#2: Classification by Logistic Regression Data set: diabetes 1. Preprocess > Open file เลอก diabetes
2. Edit เพอด type และ คาของแตละตวแปร
ตวแปร class (dependent/target) ม type เปน nominal ม 2 คา คอ tested negative/tested positive ตวแปร classifier (independent/predictor) ม 8 ตว ม type เปน numeric ทงหมด
64
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
3. ด descriptive statistics ของแตละตวแปรท Weka สรปให พรอมแสดงกราฟ (histogram) หรอคลก Visualize All เพอด histogram ของตวแปรทกตวพรอมกน
ขอมลนมทงหมด 768 ตว (Instances/Cases/N) ตวแปร 1 ถง 8 เปนตวแปร classifier ม type เปน numeric ดงนน descriptive statistics จงเปน Minimum, Maximum, Mean, Standard Deviation (StdDev) ตวแปร class จะเปนตวแปรสดทายเสมอ ม type เปน nominal ลองคลก Visualize All จะเหนกราฟความสมพนธของตวแปร class กบตวแปร classifier แตละตว
4. Visualize scatter plot (ตวแปร 2 ตว) โดยคลกทแทบ Visualize 5. Fit logistic regressiom model
เลอกแทบ Classify > Choose Classifier = functions >Logistic (Regression) Default Test option = Cross validation Fold 10
65
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
กด Start จะไดผลลพธ
6. การแปลผล 6.1 Model: Class = e-0.1232*preg + e-0.0352*plas + e0.0133*pres + e-0.0006*skin + e0.0012*insu +
e-0.0897*mass + e-0.9452*pedi + e-0.0149*age + 8.4047 หรอ Class = 0.8841*preg + 0.9654*plas + 1.0134*pres + 0.9994*skin + 1.0012*insu + 0.9142*mass + 0.3886*pedi + 0.9852*age
66
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6.2 Evaluation:
6.3 Deployment: แทนคาลงในสมการขอ 6.1
คลกขวาท Result แลว Save model 7. ใหทดสอบทง 2 test options (Use training set, Cross-validation Folds 10 จะไดวา Weka ใช full
training set ในการสรางโมเดล ซงผลลพธของโมเดลจะเหมอนกน แต accuracy จะไมเหมอนกน ในวธการ Cross-validation Folds 10 Weka จะแบงขอมลทงหมดออกเปน 10 สวน และรน 10 ครง โดยครงท 1 ใช สวนท 1 เปน test set สวนทเหลอทงหมดอก 9 สวนเปน training set ครงท 2 ใช สวนท 2 เปน test set สวนทเหลอทงหมดอก 9 สวนเปน training set จนถงครงท 10 ใช สวนท 10 เปน test set สวนทเหลอทงหมดอก 9 สวนเปน training set โดย evaluation accuracy จะเปนคาเฉลยของทง 10 ครง จากนนจะรนโมเดลอกครงโดยใช full training set ทงหมดในการรนโมเดล
67
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
WS#3: Classification by ML algorithm
Data set: diabetes 1. Preprocess > Open file เลอก diabetes 2. Fit classification model Classifier = rules > ZeroR (baseline accuracy)
การแปลผล Model: Class = tested_negative
Evaluation:
Deployment: tested negative
3. Fit classification model Classifier = rules > OneR การแปลผล
Model: ไม make sence
Evaluation: (cross-validation)
68
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Deployment: ใชกฎ (apply rule)
4. Fit classification model Classifier = trees > J48 หมายเหต ตาม default parameter จะไดจะได 20 กฏ ซงบางกฏ กเปนจรงส าหรบขอมลจ านวนนอย ดงนนควรจะปรบ parameter “minNumObj” เชนถาตองการใหกฏเปนจรงส าหรบขอมล 10% กปรบ minNumObj = 77 โดยคลกท J48 แก minNumObj
69
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
การแปลผล Model: คลกขวาท Result เลอก Visualize tree
Evaluation: (cross-validation)
Deployment: คลกขวาท Result แลว Save model
7. ใหเปรยบเทยบผลการทดลองดวย Classifier ตวอน ๆ เชน rules > PART, rules > JRIP (จะด าเนนการใน Experimenter Interface)
70
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
WS#4: Association Problem Type
Data set: supermarket 1. Preprocess > Open file เลอก supermarket
Edit เพอดการจดเกบขอมล
แถวหนง ๆ คอตะกราสนคาหนง ๆ t (=true) มสนคาชนดนน
71
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
2. Fit Association model โดยเลอกแทบ Associate
เลอก Associator algorithm เปน Apriori คลกท Apriori (รปทางขวา) ปรบ parameter ทส าคญ 3 ตวคอ -lowerBoundMinSupport = 0.2 -minMetric (min Confidence) = 0.9 -numRules = 10 ผลลพธ: ไมพบกฏใด ๆ เลย ลองปรบ -minMetric (min Confidence) = 0.85
การแปลผล
Model:
Evaluation: Min Support และ Confidence
Deployment: เอา กฏ ไปใช
72
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
WS#5: Clustering
Data set: iris 1. Preprocess > Open file เลอก iris
ในทน iris มตวแปร class แตเราจะไมใชในการ clustering แตจะใชในการเปรยบเทยบกบคาจากโมเดล 2. Fit Clustering model โดยเลอกแทบ Cluster
กด Ignore attributes
เลอก class แลวกดป ม Select
73
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
คลก SimpleKMeans ปรบ numCluster = 3
การแปลผล
Model:
Evaluation:
Deployment: คลกขวาท Result แลว Save model
74
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Witten: “Data mining is an experimental science”
WS#6 จงเปรยบเทยบการวเคราะหโจทย Classification โดยใชหลาย algoithms
Experiment 1
Data set: iris
Algoritms: trees > J48, rules > OneR, rules > ZeroR
1. Weka GUI Chooser เลอก Experimenter
75
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
2. คลก New
3. ท Datasets คลก Add new แลวเปดเลอก iris
ท Algorithms คลก Add new แลวเลอก Choose: rules > ZeroR, rules > OneR, trees > J48 (Add new 3 ครง ตาม default)
76
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
4. ไปทแทบ Run คลก Start
5. ไปทแทบ Analyze คลก Experiment
77
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
6. คลก Perform test
7. การแปลผลจาก Witten
78
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
Experiment 2:
Data set: iris, breast-cancer, glass, ionosphere, segment-challenge
Algoritms: trees > J48, rules > OneR, rules > ZeroR
1. ไปทแทบ Set up คลก New
2. ท Datasets คลก Add new แลวเปดเลอก iris, breast-cancer, glass, ionosphere, segment-challenge (Add new 5 ครง) ท Algorithms คลก Add new แลวเลอก Choose: rules > ZeroR, rules > OneR, trees > J48 (Add new 3 ครง ตาม default)
3. ไปทแทบ Run คลก Start
4. ไปทแทบ Analyze คลก Experiment
79
Knowledge Discovery by Data Analysis with R and Weka (updated 14 Marcht 20D18) สณ รกษาเกยรตศกด
5. คลก Perform test
6. เปลยน Test base Select เปน rules.OneR