ค้นหาข้อมูลในบล็อก (Search in this blog)

Thursday, May 31, 2012

กำหนดช่วงชั้นข้อมูลด้วยฟังก์ชัน IF

วันนี้ขอทดลองเขียนคำสั่งการคำนวณหาระดับชั้น (Class) แบบกำหนดค่าช่วงเอง (Interval) บนโปรแกรม Spreadsheet ด้วยตัวอย่าดังนี้ครับ
สมมุติผมมีค่าของข้อมูลที่อยู่ในช่วงต่างๆดังนี้

A 0.81
B 0.75
C 0.67
D 0.58
E 0.88
F 0.43
G 0.74
H 0.77
I 0.95

โดยโจทย์ของผมคือ ผมต้องการแยกข้อมูลดังกล่าวให้อยู่ในช่วงที่ผมต้องการโดยทำการให้ค่าใหม่ (คล้ายกับการทำ Label ข้อมูล) ดังนี้
โดยค่า 1 (ที่กำหนดใหม่) จะมีค่าของข้อมูลตั้งแต่ 0.0 - 0.4 (x <0.4) ค่า 2 มีค่าของข้อมูลตั้งแต่ 0.4 - 0.6 (x >= 0.4 and x < 0.6) ค่า 3 มีค่าของข้อมูลตั้งแต่ 0.6 - 0.7 (x >= 0.6 and x < 0.7) ค่า 4 มีค่าของข้อมูลตั้งแต่ 0.7 - 0.8 (x >= 0.7 and x < 0.8) และค่า 5 มีค่าของข้อมูลตั้งแต่ 0.8 - 1.0 (x >= 0.8)
เมื่อเราทำการกำหนดค่าของแต่ละช่วงข้อมูลเรียบร้อยแล้วขั้นตอนต่อมาคือการสร้างสูตรในโปรแกรม Spreadsheet จากตัวอย่างผมสามารถเขียนโดยใช้ฟังก์ชัน IF ดังนี้ครับ

IF(CELL>=0.8,5,IF(CELL>=0.7,4,IF(CELL>=0.6,3,IF(CELL>=0.4,2,1))))
เมื่อ CELL คือ ตำแหน่งของเซลล์ที่ต้องการคำนวณ
จากตัวอย่างจะได้ผลลัพธ์ดังนี้
กลุ่มที่ 1 ไม่มีสมาชิก
กลุ่มที่ 2 มีสมาชิกคือ D, F
กลุ่มที่ 3 มีสมาชิกคือ C
กลุ่มที่ 4 มีสมาชิกคือ B, G, H
กลุ่มที่ 5 มีสมาชิกคือ A, E, I
ลองเอาไปประยุกต์กันดูนะครับ อย่างเช่นการ reclass ของข้อมูลที่ผ่านการจำแนกข้อมูลแล้ว (Classification) เป้นต้น