Page 1 of 1
วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 3:19 pm
by somjeed
รบกวนผู้รู้ค่ะ
1 มีข้อมูลรายชั่วโมงของสารมลพิษ x (ใน 1 วัน มี 24 ค่า) ต้องการรวมให้เป็นค่าเฉลี่ยรายวัน (รวมให้เหลือ 1 ค่า) แต่ข้อมูลมีเยอะมากค่ะ 12 ปี ต้องใช้สูตรอะไรคะ เช่น ต้องการหาค่าเฉลี่ย h3:h26, h27:h52,....... ต่อไปเรื่อยๆจนแถวสุดท้ายค่ะ
2 ในคอลัมย์ A รายงานเป็น ปี/เดือน/วัน แต่ตัวปีมีข้อมูลมาไม่ครบ เช่น 90101 คือ ปี 2009 เดือน 01 วันที่ 01 จะทำอย่างไรให้แสดงเต็ม เป็น 20090101 คะ
3. มีวิธีรวมข้อมูลหลายๆ sheet ให้อยู่ใน sheet เดียวกันแบบไม่ต้อง copy มาวางมั้ยคะ
ขอบคุณล่วงหน้าคะ
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 3:42 pm
by DhitiBank
ตอบทีละข้อนะครับ
1. อาจใช้สูตร sumif(...)/countif(...) ได้ โดย sumif จะรวมเฉพาะค่าในวันที่เฉพาะที่ต้องการ หารด้วย countif คือจะนับว่าในวันนั้นๆ มีการบันทึกผลกี่ครั้ง ผลออกมาเป็นค่าเฉลี่ย (ลองดูตัวอย่างในชีทที่ 2 ในไฟล์แนบครับว่าคำตอบตรงหรือไม่)
2. การเติมวันที่ให้เต็มตามรูปแบบที่แจ้งมา อาจใช้สูตรได้ ลองดูในไฟล์แนบ ชีทที่ 2 คอลัมน์ A ครับ
3. หากมีหลายๆ ชีท และข้อมูลมีถึง 12 ปี ซึ่งแต่ละวันมีข้อมูลประมาณ 20 records การใช้สูตรอาจจะไม่สะดวกยิ่งมีสูตรอาร์เรย์อย่างในชีทที่ 2 ยิ่งทำให้คำนวณช้ามากๆ อย่างไรก็ตาม ลองแนบตัวอย่างที่มีข้อมูลสัก 2-3 ชีทมาดูหน่อยได้ไหมครับ
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 4:05 pm
by somjeed
ขอบคุณมากค่ะ
คำตอบทั้งข้อ 1 และ 2 ถูกต้องแบบที่ต้องการค่ะ
เราสามารถ copy สูตรไปใช้ได้เลยหรือเปล่าคะ อยากให้มัน run ไปเองค่ะ ใน 1 sheet มีประมาณ 50,000 แถวค่ะ ทำเองไม่ไหว
ส่วนข้อ 3 มีแค่ 3 sheet ค่ะ แต่ sheet ละ 5 ปี (ประมาณ50000 แถวค่ะ)
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 4:13 pm
by DhitiBank
หากข้อมูลมีหลายแถวขนาดนั้น ขอแนะนำคร่าวๆ แบบนี้ครับ
1. หากต้องการผลลัพธ์สุดท้ายในชีทเดียวกัน ไม่ทราบว่าคัดลอกข้อมูลทั้ง 3 ชีทมารวมกันได้หรือไม่ครับ ให้เรียงต่อกันลงไปเลย
2. หากได้ พอเอาข้อมูลมาเรียงต่อกันแล้ว ก็เปลี่ยนวันที่ให้เป็นรูปแบบที่ต้องการก่อนโดยใช้สูตรครับ (ตัวอย่างในชีท 2 คอลัมน์ A) โดยใส่สูตรในคอลัมน์ว่างๆ สักคอลัมน์หนึ่ง
3. ได้วันที่รูปแบบที่ต้องการแล้ว ก็ให้คัดลอกแล้วมาวางเฉพาะ "ค่า" แทนที่วันที่เก่า
4. คัดลอกวันที่รูปแบบใหม่นี้ เอาไปวางในชีทใหม่ที่ต้องการแสดงผลเฉลี่ย แล้วใช้ฟังก์ชั่น remove duplicates ครับ อย่าใช้สูตร เพราะอาจรอ... แบบรอไปเถอะ เพราะข้อมูลเยอะมาก ไม่เหมาะกับสูตรอาร์เรย์ในการลิสต์ date unique ครับ
5. พอได้วันที่แบบไม่ซ้ำมาแล้ว ค่อยเอา sumif/countif ไปประยุกต์ใช้
ปล. หากเอามารวมกันไม่ได้ในข้อ 1 ก็ทำแยกแต่ละชีท เริ่มจากข้อ 2 เลยครับ แต่แนะนำคือ คัดลอกไฟล์ต้นฉบับไว้ด้วยก็ดีนะครับ เผื่อเกิดอุบัติเหตุ
--อ่อ ตกหล่น--
การเอาค่าซ้ำออกหรือ remove duplicates ก็ให้:
ลากคลุมช่วงข่อมูลที่ซ้ำ --> เมนู Data --> Remove duplicates
จะได้วันที่เดี่ยวๆ ที่ไม่ซ้ำครับ
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 4:47 pm
by somjeed
ขอบคุณอีกครั้งค่ะ
จะลองทำดู แล้วจะมารายงานผลค่ะ
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 10:19 pm
by jelelite
จะหาค่าเฉลี่ยในแต่ละวันวันใช้สูตร
averageif(range,criteria,average range) ได้อีกสูตรครับ การใช้เหมือน sumif ครับ
Re: วิธีหาค่าเฉลี่ยของข้อมูลจำนวนมาก
Posted: Thu Sep 03, 2015 11:42 pm
by DhitiBank
นั่นสิ จริงด้วย ขอบคุณมากครับ

ผมไม่เคยใช้มาก่อน