บันทึกวิธีสรุปข้อมูลเพื่อนำไปสร้างกราฟ Ghaph/Chart 102 สำหรับนักวิทยาศาสตร์ข้อมูล Data Science - sprint 04

Image placeholder
แวะมาทักทายกันได้


Data visualization in Google Sheets


  1. Explore Dataset ว่ามีข้อมูลเป็นอย่างไรบ้าง
  2. ตั้งชื่อ ให้กับข้อมูลทั้งหมด ด้วยฟังก์ชัน Name Range


EP01 - Spark line

เราจะใช้ dataset เป็นข้อมูล การขายรถยนต์



=SPARKLINE(B3:E3)



ใช้สำหรับดู trend line ของข้อมูลอย่างง่ายๆ

เราสามารถ custom function ได้ด้วย เช่น

=SPARKLINE(B3:E3, {"color", "red"})



นอกจากนี้เราสามารถที่จะปรับ parameter อื่นๆได้ โดยที่ไปอ่าน manual และลองเล่นมันดู

คราวนี้มาดูข้อมูล ชุดนี้กันบ้าง




โดยถ้าเทียบกับข้อมูลอื่นๆ มักจะให้ dictinary เพื่ออธิบายข้อมูลแต่ละ column ว่าหมายถึงอะไร

ในทีนี้ 0-8 จะหมายถึง กลุ่มลูกค้าประเภท Detractor + Passive

และ 9-10 จะหมายถึง กลุ่มลูกค้า loyalty ที่รัก brand นี้มาก ก็จะเรียกว่า Promoter

ซึ่งเราจะมาดูการกระจายตัว เพื่อเปรียบเทียบข้อมูลระหว่างลูกค้าสองกลุ่มนี้

=SPARKLINE(B11:C11, {"charttype", "bar"})



เราสามารถเปลี่ยนสีเพื่อช่วยสร้างความเข้าใจเพิ่ม สามารถแก้สีได้

=SPARKLINE(B11:C11, {"charttype", "bar"; "color1", "red"; "color2", "red2"})



EP02 - Heatmap

เราจะใช้ data set หน้าตาแบบนี้สำหรับในเรื่อง hearmap



ซึ่งปกติใน excel จะมี feature สำหรับการทำ alternative color ซึ่งใน google sheet ก็มี

สามารถไปที่ menu bar : Format → alternative color → เลือกสีตามต้องการ



จริงๆแล้วจะมาทำ Condition Formating เพื่อที่จะเน้นข้อมูลตามเงื่อนไจที่เราต้องการ

โดยที่เลือก menu bar : Format → conditional formatting แล้วใส่เงื่อนไขที่ sidebar ด้านข้าง


สร้างเงื่อนไขว่า ค่าที่มากกว่า 200 ให้ hilight color



นอกจากนี้ ที่ช่องเงื่อนไข เรายังสามารถที่จะใส่ formular หรือ สูตรลงไปในช่องเงื่อนไขได้ด้วย ซึ่ง จะทำการ ใส่ค่าที่ช่อง cell สักหนึ่งช่องเพื่อจะได้ไม่ต้องมาปรับค่าที่ sidebar ด้านข้าง วิธีคือ


เลือก lock cell โดยเลือกมา 1 cell ไหนก็ได้ จะต้องใส่ dollar sign เองที่ช่อง formular


จากที่ได้ทำ conditional formatting ไปเราจะมาทำ heatmap ความแตกต่างของตัวอย่างที่แล้วคือ heatmap จะมีการไล่เฉดสีเพื่อสร้างความแตกต่างตามเงื่อนไข

โดยเราจะเลือก heat map ได้จาก Tab ชื่อ Color Scale ที่ side bar


จะเห็นว่ามีการเปลี่ยนแปลงตามเงื่อนไขของ color scale


ลองมาพิจารณาที่ การเลือกเงื่อนไข ค่า min mid และ max ของ color scale ซึ่ง ในช่องของ mid เราสามารถเลือกเป็น percentile เพื่อที่จะกำหนดสีให้กับข้อมูลที่อยู่ตรงกลางของข้อมูลทั้งหมด วิธีการของมันคือ มันจะ sort data แล้วเอาค่า median หรือค่ากลางมาเทสีนั้นเอง


นี่คือตัวอย่างที่ไม่ดี นะครับ สิ่งที่ควรทำ ควรจะใช้เป็นสีเดียว เพื่อที่จะเข้าใจข้อมูลได้เร็วที่สุด เช่น


EP03 - Score Card


Score card เอาไว้ทำอะไร

เอาไว้ show KPI (Key Performance Indicator)

เช่น ข้อมูล กำไร การใช้งาน active user เป็นต้น

เราจะสร้าง Chart ขึ้นมา

ไปที่ menu bar : insert → chart

หรือ icon chart ที่ menu bar


คราวนี้เราจะมาสร้าง Score Card กัน

โดยสร้าง Blank Chart ขึ้นมาก่อน


เราก็จะเห็น side bar มีให้เลือก chart แบบต่างๆ ในที่นี้จะเลือก score card หน้าตาจะเป็นตัวเลข 1024 ที่อยู่ในหมวด other


หลังจากเลือกเสร็จเราก็ตั้งค่า โดยที่ เลือก data range ไปเลือก cell ที่ต้องการจะแสดง เราก็จะได้ score card หน้าตาแบบนี้


ข้อดีของ score card เราสามารถเปรียบเทียบข้อมูลกับ cell อื่นได้ (base line) หมายถึง อยากรู้ว่ามีการเปลี่ยนแปลงเท่าไร จากเดิมเช่น รายได้จากเดือนที่แล้ว 1900


แก้ไข base value


ผลที่ได้

นอกจากนี้ Score Card ยังสามารถ Aggregate ค่าสถิติได้ด้วยโดยไม่ต้องคำนวนเอง


EP04 - Histograms


เราใช้ histogram chart ในการแสดง column ชุดข้อมูลที่เป็นตัวเลข ซึ่งเดี๋ยวจะมาลองทำกับข้อมูล IMDB กัน โดยเบื้องต้น เราจะใช้ Dataset ที่ชื่อ IMDB โดยกำหนด Data Range เอาไว้แล้ว Query มาไว้ที่ sheet ที่เราจะ แสดง Histogram


จากนั้นเราก็จะ hilight ข้อมูลทั้ง Column แล้วกด menubar : insert → chart → histogram หรือ กดที่ icon รูป chart ก็ได้แล้ว google sheet จะ auto chart มาให้อัตโนมัติ



???? bin : เป็น value range ของแต่ละแท่ง

เราสามารถปรับ bin ได้ โดยไป edit chart โดยเลือก histogram tab


EP05 - Bar


เช่นเดียวกันกับ Histogram ซึ่งจะใช้ข้อมูล IMDB แต่คราวนี้จะดึงมาเฉพาะ ข้อมูล column ชื่อ Rating และ Length

ใช้กับข้อมูลที่เป็นจำนวนนับข้อมูลมาแสดงผล


คราวนี้มาตั้งโจทย์ว่า อยากรู้ว่า Rating มีจำนวนเท่าไร หรือ มีกี่กลุ่ม เป็นการ explore data เบื้องต้น

ขั้นตอนแรก ตรวจสอบดูว่ามีประเภทอยู่เท่าไรโดยใช้

=UNIQUE(Range)

มีอยู่ 8 กลุ่ม

R


PG-13


Approved


PG


Not Rated


G



Passed



คราวนี้เราอยากรู้ว่าในแต่ละกลุ่ม มีหนังอยู่ทั้งหมดกี่เรื่อง

=COUNTIF(RANGE,CRITRIRIA)


คราวนี้เราสามารถนำข้อมูลที่สรุปนี้มาทำ Bar chart ได้แล้ว


เราสามารถ filter ข้อมูลได้ chart ก็จะเปลี่ยนตามไปด้วย

คราวนี้เรามาลองเปรียบเทียบข้อมูล 2 column

โดยการหาค่าเฉลี่ยของความยาวของหนัง ซึ่งจะใช้

=AVERAGEIF(RANGE_CRITERIA, CRITERIA, RANGE_TARGET)


EP06 - LINE


ข้อมูลที่มักจะใช้กับ line chart คือ time series อย่างเช่น วันเดือนปี หรือ แยก วัน, เดือน, ปี ได้เช่นกัน

ตัวอย่างนี้ใช้แบบรายเดือน


เราใช้วิธีเดิมได้เลย โดยการ hilight ข้อมูลแล้วกด Menu bar → Icon Graph


tamparal เป็นข้อมูลที่เกี่ยวกับเรื่องเวลา

เราสามารถที่จะปรับ customize graph เป็นอย่างอื่นได้ด้วยเช่น Area


EP07 - Scatter Plot


scatter plot เป็น กราฟประเภทดูความสัมพันธ์ระหว่าง 2 ตัวแปร หรือ 2 column โดยที่ที่ง 2 column จะต้องเป็นตัวเลขทั้งคู่ โดยเราจะเอาข้อมูลมาจาก IMDB เช่นเดิม


เลือกกราฟ แล้วเลือกกราฟแบบ scatter plot


คราวนี้ลองสลับตำแหน่งของ column ดูบ้าง เราจะเห็นความแตกต่าง คือ ตำแหน่งของการplot ข้อมูลเปลี่ยนไป


จากกราฟที่ plot ออกมาสังเกตได้ว่า ข้อมูลจะไปกองอยู่ที่เลข 8 ซึ่งทำให้ดูค่อนข้างอยาก เราสามารถ จำกัด range ให้แสดงผลใกล้กลุ่มข้อมูลได้โดยที่ไป customize แกน y ให้ทำการ double click ที่ เลข 8 แล้วจะแสดง sidebar สำหรับแก้ไข ให้ปรับค่า MIN ให้เป็น เลข 8 เราจะได้กราฟหน้าตาแบบนี้


ดูจากกราฟ scatter plot นี้แล้ว เกือบๆจะเห็น trend line ซึ่งกราฟ scatter plot นี้สามารถดู linear regression เพื่อดูความสัมพันธ์ของข้อมูลที่แสดงได้ด้วย ให้ไปที่ customize graph แล้วเลือก series แล้วเลือก trend line


Trend line ตัวนี้เกิดจาก Model สมการทางคณิตศาสตร์ที่คำนวนจากตัวเลขในตารางข้อมูลของเรา ซึ่งเราสามารถปรับเปลี่ยนได้ด้วยว่าเราต้องการใช้ Model แบบไหน อย่างเช่น Polynomial แล้วเลือก Polynomial Degree เท่ากับ 6 เราก็จะได้ trend line ตาม สมการที่เราเลือก customize ได้แล้ว ก็เลือก model ให้เหมาะสมและ fit ที่สุดเพื่อที่จะทำนายข้อมูลใหม่ๆได้ จากตัวอย่างที่เลือก degree เท่ากับ 6 ก็อาจจะไม่เหมาะก็ได้ เพราะมันจะไม่สามารถทำนายข้อมูลอื่นๆได้ อย่าง ข้อมูลที่ใกล้ออกไป อาจจะเป็น outliner ก็ได้ อาจจะต้องเก็บข้อมูลเพิ่มเติม


EP08 - GeoMap


เป็นกราฟประเภทแสดงแผนที่


ทำการ hilight แล้วกดสร้าง graph แล้วไปเลือก Geo Chart


อย่างข้อมูลด้านล่างเป็น ข้อมูลประชากรของสหรัฐอเมริกา ซึ่งเราจะมา plot ข้อมูลนี้ลงในประเทศอเมริกา

ให้ทำการสร้างกราฟขึ้นมาเหมือนเดิมโดยการ hilight ข้อมูล ประชากร แล้วไปเลือก insert graph จากนั้นก็เลือกประเภทกราฟแบบ Geo Map ซึ่งตรงนี้จะต้อง customize เพิ่มเติมอีกนิดนึงโดยที่เลือก Region ด้วยให้เป็นอเมริกา


EP09 - TreeMap


treemap เอาไว้ใช้ทำอะไร

ใช้กับ section ของข้อมูล

เงื่อนไขในการสร้าง treemap จะต้องทำตารางข้อมูลให้ได้ตามที่ google กำหนดก่อนจึงจะสร้าง graph แบบนี้ได้

  1. ให้มองข้อมูลแบบตาราง โดยที่ cell ตัวหนังสือตัวหนาให้เป็นหัวข้อ parent และ ที่ไม่ใช่ตัวหนาเป็น child
  2. สร้าง key module แล้ว copy มาต่อท้าย Parent
  3. จากนั้นก็ copy parent มาวางข้าง child ของแต่ละบรรทัด
  4. สร้างข้อมูลอีก 1 column ซึ่งต้องเป็นตัวเลขเพราะจะต้องเอาไปแสดงผล
  5. สร้างฟังก์ชัน ผลรวมของข้อมูลทั้งหมด แล้วใส่เอาไว้ที่ บรรทัดเดียวกับคำว่า Module





คอร์สนี้ดีมากกกก (ไก่ ล้านตัว)  ใครอ่านจบ แนะนำว่าให้ไปสมัครเรียน ติดตามได้ที่ link ด้านล่างนี้เลย 

Course Online DATA ROCKIE Bootcamp





แวะมาทักทายกันได้
donate

Categories: Tutorial Tags: #Data Science , 1000