ความเห็น: 4
คิดมาก ไม่คิดมาก เรื่องยาก เรื่องง่าย # 3 [C]
ความเดิมตอนที่แล้ว
สรุปแบบที่ไม่สรุปจากบันทึกที่ผ่านมา ๒ บันทึก
ข้อมูลชุดเดียวกัน ข้อมูลชุดแรกมีจำนวน 439 ข้อมูล ทดสอบด้วย test ที่ใช้ทดสอบการกระจายของข้อมูลพบว่า test เกือบทั้งหมด (7 ใน 8) ให้ผลการทดสอบออกมาว่า ข้อมูลนี้มีการกระจายของข้อมูลที่ไม่เป็นแบบ normal distribution
ข้อมูลชุดเดียวกันนี้หากเราดึงข้อมูลมาเฉพาะข้อมูลที่มีค่าไม่ซ้ำกัน (จาก 439) จะมีข้อมูลที่มีค่าไม่ซ้ำกันอยู่แค่ 11 ค่าเท่านั้น เมื่อนำข้อมูลทั้ง 11 ค่านี้ไปทดสอบด้วย test เดิม พบว่าผลจากการทดสอบด้วย test ต่าง ๆ 6 ใน 9 (ครั้งที่ 2 ได้ใช้ ks test ทดสอบเพิ่มอีก 1 ครั้ง หรือ 6 ใน 8 test หากทดสอบเท่ากับครั้งที่ 1) ให้ผลการทดสอบว่า ข้อมูลทั้ง 11 ค่าที่มีค่าไม่ซ้ำกันนั้น มีการกระจายที่เป็นแบบ normal distribution
คราวนี้เรามาลองอะไรเล่น ๆ กันอีกนะครับ
คราวนี้ผมจะทำการสุ่มตัวอย่างจากข้อมูลทั้ง 439 ข้อมูลมาจำนวนต่าง ๆ กันครับ โดยเริ่มจากการสุ่มครั้งแรกมา 10 ค่า จากนั้นจะทำการเพิ่มจำนวนค่าของการสุ่มขึ้นครั้งละ 10 ค่า (10, 20, 30, 40, 50, 60, 70, 80, 90, 100) และครั้งสุดท้ายจะสุ่มมาเป็นจำนวน 200 ค่า
นำค่าที่ได้จากการสุ่มแต่ละครั้งไปทดสอบกับ shapiro.test แล้วดูผลการทดสอบที่ได้ครับ
ผมทดสอบให้ดูเพียง test เดียวคือ shapiro.test ซึ่งเป็น test ที่นิยมใช้ในการทดสอบ นอกจากนั้นผมยังสรุปข้อมูลแต่ละครั้งของการสุ่มให้ด้วยโดยใช้ฟังก์ชัน summary(), stem() และทำการ plot ข้อมูล โดยใช้ boxplot() และ qqnorm() + qqline() ไว้ในกราฟรูปเดียวกัน
โดยที่เส้นสีแดงที่คาดแนวนอนใน boxplot จะแสดงตำแหน่งของ mean ของข้อมูลนั้น ๆ ครับ (เพื่อเปรียบเทียบกับเส้นทึบสีดำในกล่อง หรือค่า median ของข้อมูลนั้น ๆ)
> sam1 <- sample(dim1x, 10)
> summary(sam1)
Min. 1st Qu. Median Mean 3rd Qu. Max.
21.00 23.00 23.50 23.70 24.75 27.00
> stem(sam1)
The decimal point is at the |
20 | 0
22 | 0000
24 | 0000
26 | 0
> boxplot(sam1)
> abline(h=mean(sam1),col="red")
> qqnorm(sam1,col="blue")
> qqline(sam1,col="red")
> shapiro.test(sam1)
Shapiro-Wilk normality test
data: sam1
W = 0.96583, p-value = 0.8497
> sam2 <- sample(dim1x, 20)
> summary(sam2)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 24.00 24.00 24.35 26.00 28.00
> stem(sam2)
The decimal point is at the |
18 | 0
20 | 0
22 | 00
24 | 0000000000
26 | 00000
28 | 0
> boxplot(sam2)
> abline(h=mean(sam2),col="red")
> qqnorm(sam2,col="blue")
> qqline(sam2,col="red")
> shapiro.test(sam2)
Shapiro-Wilk normality test
data: sam2
W = 0.88971, p-value = 0.02656
> sam3 <- sample(dim1x, 30)
> summary(sam3)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 22.25 24.00 23.60 24.75 27.00
> stem(sam3)
The decimal point is at the |
19 | 00
20 |
21 | 00
22 | 0000
23 | 000
24 | 00000000000
25 | 000
26 | 000
27 | 00
> boxplot(sam3)
> abline(h=mean(sam3),col="red")
> qqnorm(sam3,col="blue")
> qqline(sam3,col="red")
> shapiro.test(sam3)
Shapiro-Wilk normality test
data: sam3
W = 0.93488, p-value = 0.06628
> sam4 <- sample(dim1x, 40)
> summary(sam4)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 23.00 24.00 24.15 25.25 28.00
> stem(sam4)
The decimal point is at the |
19 | 00
20 | 0
21 | 0
22 | 0000
23 | 00000
24 | 00000000
25 | 000000000
26 | 0000
27 | 00000
28 | 0
> boxplot(sam4)
> abline(h=mean(sam4),col="red")
> qqnorm(sam4,col="blue")
> qqline(sam4,col="red")
> shapiro.test(sam4)
Shapiro-Wilk normality test
data: sam4
W = 0.94937, p-value = 0.07214
> sam5 <- sample(dim1x, 50)
> summary(sam5)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 22.00 23.00 23.32 24.00 29.00
> stem(sam5)
The decimal point is at the |
18 | 0
20 | 0000000000
22 | 0000000000000000000
24 | 0000000000000
26 | 0000
28 | 000
> boxplot(sam5)
> abline(h=mean(sam5),col="red")
> qqnorm(sam5,col="blue")
> qqline(sam5,col="red")
> shapiro.test(sam5)
Shapiro-Wilk normality test
data: sam5
W = 0.9438, p-value = 0.0191
> sam6 <- sample(dim1x, 60)
> summary(sam6)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 22.00 23.00 23.42 24.25 28.00
> stem(sam6)
The decimal point is at the |
19 | 0
20 | 000
21 | 00000
22 | 0000000000
23 | 000000000000
24 | 00000000000000
25 | 0000000
26 | 0000
27 | 00
28 | 00
> boxplot(sam6)
> abline(h=mean(sam6),col="red")
> qqnorm(sam6,col="blue")
> qqline(sam6,col="red")
> shapiro.test(sam6)
Shapiro-Wilk normality test
data: sam6
W = 0.97139, p-value = 0.1706
> sam7 <- sample(dim1x, 70)
> summary(sam7)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 22.00 23.00 23.31 24.00 28.00
> stem(sam7)
The decimal point is at the |
19 | 0
20 | 000000
21 | 000000
22 | 0000000
23 | 0000000000000000000000
24 | 0000000000000
25 | 0000
26 | 00000
27 | 000
28 | 000
> boxplot(sam7)
> abline(h=mean(sam7),col="red")
> qqnorm(sam7,col="blue")
> qqline(sam7,col="red")
> shapiro.test(sam7)
Shapiro-Wilk normality test
data: sam7
W = 0.94973, p-value = 0.007018
> sam8 <- sample(dim1x, 80)
> summary(sam8)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 22.00 24.00 23.68 25.00 29.00
> stem(sam8)
The decimal point is at the |
18 | 00
20 | 0000000000
22 | 0000000000000000000000
24 | 00000000000000000000000000000000
26 | 000000000000
28 | 00
> boxplot(sam8)
> abline(h=mean(sam8),col="red")
> qqnorm(sam8,col="blue")
> qqline(sam8,col="red")
> shapiro.test(sam8)
Shapiro-Wilk normality test
data: sam8
W = 0.97587, p-value = 0.1344
> sam9 <- sample(dim1x, 90)
> summary(sam9)
Min. 1st Qu. Median Mean 3rd Qu. Max.
20.00 23.00 24.00 23.76 25.00 29.00
> stem(sam9)
The decimal point is at the |
20 | 00000
21 | 0000000000
22 | 000000
23 | 000000000000000000
24 | 000000000000000000000000000
25 | 0000000
26 | 00000
27 | 00000000
28 | 000
29 | 0
> boxplot(sam9)
> abline(h=mean(sam9),col="red")
> qqnorm(sam9,col="blue")
> qqline(sam9,col="red")
> shapiro.test(sam9)
Shapiro-Wilk normality test
data: sam9
W = 0.95065, p-value = 0.001835
> sam10 <- sample(dim1x, 100)
> summary(sam10)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.00 23.00 24.00 23.60 24.25 29.00
> stem(sam10)
The decimal point is at the |
18 | 000
20 | 00000000000
22 | 0000000000000000000000000000000000
24 | 000000000000000000000000000000000000
26 | 00000000000
28 | 00000
> boxplot(sam10)
> abline(h=mean(sam10),col="red")
> qqnorm(sam10,col="blue")
> qqline(sam10,col="red")
> shapiro.test(sam10)
Shapiro-Wilk normality test
data: sam10
W = 0.96037, p-value = 0.004273
> sam11 <- sample(dim1x, 200)
> summary(sam11)
Min. 1st Qu. Median Mean 3rd Qu. Max.
19.0 22.0 24.0 23.7 25.0 29.0
> stem(sam11)
The decimal point is at the |
19 | 0000
20 | 0000000
21 | 00000000000000000
22 | 00000000000000000000000000
23 | 000000000000000000000000000000000
24 | 00000000000000000000000000000000000000000000000000000
25 | 0000000000000000000000000
26 | 00000000000000
27 | 00000000000000
28 | 00000
29 | 00
> boxplot(sam11)
> abline(h=mean(sam11),col="red")
> qqnorm(sam11,col="blue")
> qqline(sam11,col="red")
> shapiro.test(sam11)
Shapiro-Wilk normality test
data: sam11
W = 0.97182, p-value = 0.0004758
ค่าเฉลี่ยจากการสุ่มตัวอย่างทั้ง 11 ครั้งมีค่าดังด้านล่างครับ
> allmean <- rbind(mean(sam1), mean(sam2), mean(sam3), mean(sam4), mean(sam5), mean(sam6), mean(sam7), mean(sam8), mean(sam9), mean(sam10), mean(sam11))
> colnames(allmean) <- "mean"
> rownames(allmean) <- c("sam1" ,"sam2", "sam3", "sam4", "sam5", "sam6", "sam7", "sam8", "sam9", "sam10", "sam11")
> allmean
mean
sam1 23.70000
sam2 24.35000
sam3 23.60000
sam4 24.15000
sam5 23.32000
sam6 23.41667
sam7 23.31429
sam8 23.67500
sam9 23.75556
sam10 23.60000
sam11 23.70500
> summary(allmean)
mean
Min. :23.31
1st Qu.:23.51
Median :23.68
Mean :23.69
3rd Qu.:23.73
Max. :24.35
ค่าเฉลี่ยจากการสุ่มตัวอย่างอยู่ระหว่าง 23.31 - 24.35 จากการสุ่มตัวอย่าง 11 ครั้งมีค่าเฉลี่ยที่น้อยกว่า 24 อยู่ทั้งหมด 9 ครั้งและมีค่าเฉลี่ยที่มากกว่า 24 อยู่ 2 ครั้ง
การทดสอบด้วย Shapiro Wilk Test ให้ผลการทดสอบในทางปฏิเสธสมมติฐานการทดสอบถึง 6 ใน 9 การทดสอบ
บันทึกนี้ไม่มีอะไรครับ ผมให้ดูข้อมูลเล่น ๆ
หมายเหตุ:
การสุ่มแต่ละครั้งจะได้ข้อมูลที่อาจจะไม่เหมือนเดิม แม้จะใช้จำนวนค่าในการสุ่มเท่ากัน เช่นสุ่มมาครั้งละ 10 ค่าจำนวน 3 ครั้ง ค่าที่ได้ในการสุ่มทั้ง 3 ครั้งอาจจะได้ค่าไม่เหมือนกันเลยก็ได้ และจะส่งผลการทดสอบทำให้ได้ผลต่างกันก็ได้ในการสุ่มแต่ละครั้งแม้จะมีจำนวนค่าของการสุ่มเท่ากัน
อิอิอิ
เราเอง
เพลง: ลาวดำเนินทราย
ศิลปิน: บอยไทย
บันทึกอื่นๆ
- เก่ากว่า « คิดมาก ไม่คิดมาก เรื่องยาก เรื่อ...
- ใหม่กว่า » คิดมาก ไม่คิดมาก เรื่องยาก เรื่อ...
27 กรกฎาคม 2558 18:16
#103496
เรื่องยากๆ น้าเอามาเขียนซะง่ายเชียว
เฮ้อ เรามึนจริงๆ เรื่องตัวเลขครับ
ตึ๊บๆ
"ใจสั่งมา"