Asst. Prof. Duangjai Jitkongchuen, PhD

Asst. Prof. Duangjai Jitkongchuen, PhD

Vice President, Manpower Development Division at Big Data Institute (Public Organization), BDI

บทความของผู้เขียน

Articles

Author Category Post Filter
วิเคราะห์ NFT: ความเข้าใจในมูลค่าสินทรัพย์
ตามหลักการแล้ว มูลค่าของ Non-Fungible Token (NFT) หรือสินทรัพย์ดิจิทัลที่มีลักษณะเฉพาะตัวในทุกวันนี้ขึ้นอยู่กับว่าแต่ละคนจะมองมันอย่างไร โดยเมื่อเวลาผ่านไปมูลค่าของ NFT ชิ้นหนึ่งจะเปลี่ยนไปอย่างไรก็ยังไม่มีใครสามารถให้คำตอบได้แน่ชัด ( NFT คือ ) ตลอด 2-3 ปีที่ผ่านมา แนวคิดของสินทรัพย์ดิจิทัลที่มีลักษณะเฉพาะตัว (NFT) ได้กลายเป็นตัวแทนของนวัตกรรมเทคโนโลยีที่โดดเด่นที่สุดอย่างหนึ่งในยุคนี้ ตามแก่นแท้ของ NFT คือสินทรัพย์ดิจิทัลที่ถูกสร้างขึ้น ซื้อขาย และแลกเปลี่ยนในตลาด Blockchain ส่วนใหญ่ผ่านทางสกุลเงินคริปโต เช่น Ethereum เป็นต้น การผสมผสานเทคโนโลยี Blockchain เข้าด้วยกันสามารถทำให้ผู้ใช้สามารถพิสูจน์ได้ว่า NFT แต่ละชิ้นเป็นสินทรัพย์ดิจิทัลของแท้ที่ไม่เหมือนใคร นอกจากนี้ Blockchain ยังสามารถช่วยตามรอยเจ้าของคนก่อน ๆ ได้อีกด้วย ตั้งแต่มีการเปิดตัวในวงกว้างในปี 2017 ผ่านทางเกม เช่น Axie Infinity, CryptoKitties, และ My Crypto Heroes เป็นต้น NFT ก็ได้รับความนิยมอย่างมากมายมหาศาลจากคนทั่วโลก จากการประสบความสำเร็จในการผสมผสานเข้ากับโลกแห่งศิลปะดิจิทัล NFT บางชิ้นสามารถขายได้หลายล้าน หรือแม้กระทั่งหลายสิบล้านดอลลาร์ ทำให้มีการคาดคะเนกันอย่างแพร่หลายถึงมูลค่าที่แท้จริงของ NFT ในฐานะสินทรัพย์ดิจิทัลประเภทใหม่ขึ้นมา อย่างไรก็ตาม เช่นเดียวกับสินค้าโภคภัณฑ์และสินทรัพย์ดิจิทัลอื่น ๆ ตัว NFT เกือบทั้งหมดมีมูลค่าน้อยมาก ไปจนถึงไม่มีมูลค่าที่แท้จริงเลย แต่มูลค่าของ NFT กลับขึ้นอยู่กับความต้องการที่ผันผวนของตลาดผู้บริโภค NFT สร้างมูลค่าอย่างไร โดยพื้นฐานแล้ว จุดดึงดูดของ NFT คือการคนซื้อสามารถเป็นเจ้าของสินทรัพย์ดิจิทัลนั้น ๆ ได้เลย ไม่ว่าจะเป็นงานศิลปะชิ้นหนึ่ง สิ่งของที่ใช้ในวิดีโอเกม หรือแม้แต่ไฟล์ ทวีตแรกสุด ของแจ็ค ดอร์ซีย์ อดีต CEO ของทวิตเตอร์ แม้ว่าจะมีอีกบุคคลหนึ่งที่ “เป็นเจ้าของ” ชิ้นดั้งเดิมที่ถูกเปลี่ยนให้เป็น NFT (เช่นศิลปินปล่อยเพลงหรือ มิวสิควิดีโอเป็น NFT) ผู้ซื้อ NFT ก็สามารถอวดอ้างสิทธิ์การเป็นเจ้าของไฟล์ดั้งเดิมได้  หลังจากนั้นเจ้าของจะเลือกถือสิทธิ์การเป็นเจ้าของ NFT นั้นไว้หรือจะเลือกขายต่อเพื่อเอากำไรก็ย่อมได้ เพื่อทำความเข้าใจเรื่องนี้ เราต้องดูว่ามูลค่าของ NFT แปรผันตามมูลค่าที่ผู้ใช้มองมันอย่างไร ตัวอย่างเช่น ถ้าผู้ใช้จำนวนมากในกลุ่มตลาดผู้บริโภคกลุ่มหนึ่งมอง NFT ชิ้นนั้นว่าเป็นของหายากกว่าชิ้นอื่น ๆ ผู้ใช้เหล่านั้นยิ่งให้มูลค่า NFT ดังกล่าวมากขึ้น เช่นเดียวกับผู้สะสมงานศิลปะหรือของที่ระลึกเกี่ยวกับกีฬา มูลค่านั้นไม่ได้มีอยู่ในตัวสิ่งของที่พวกเขาได้มา แต่อยู่ที่ว่าตลาดมองเห็นมันอย่างไร  อย่างไรก็ตาม ยังมีอีกด้านหนึ่งของ NFT ที่สามารถช่วยสร้างมูลค่าเพิ่มเติมได้ผ่านการผสมผสานการใช้สัญญาอัจฉริยะหรือสมาร์ทคอนแทรคท์ การสร้างมูลค่าในกรรมสิทธิ์ตลอดชีพผ่านสัญญาอัจฉริยะ สัญญาเหล่านี้อนุญาตให้ผู้ใช้สามารถพิสูจน์อัตลักษณ์และความเป็นเจ้าของ NFT ใดก็ได้เมื่อมีการทำธุรกรรมซื้อขาย เพราะภายใน Blockchain นั้นมีโปรแกรมสำหรับ สัญญาอัจฉริยะ อยู่ ซึ่งนอกจากจะช่วยให้ผู้ใช้สามารถเห็นได้ว่าใครเป็นคนแรกที่สร้าง NFT ชิ้นนั้นแล้ว สัญญาอัจฉริยะยังสามารถอนุญาตให้ผู้สร้างคนแรกได้รับเงินส่วนหนึ่งในรูปแบบของ การจ่ายเงินค่าสิทธิ จากธุรกรรมแต่ละครั้งที่เกิดขึ้นได้ด้วย บางทีนี่อาจเป็นวิธีที่ถูกต้องและยุติธรรมที่สุดที่สินทรัพย์ดิจิทัลชนิดใหม่อย่าง NFT สามารถให้ส่วนแบ่งโดยตรงกับทั้งผู้สร้างและผู้บริโภคอย่างเท่าเทียม ยิ่ง NFT นั้นขายได้ราคามากเท่าไร ผู้สร้างคนแรกก็จะยิ่งสามารถได้รับค่าสิทธิมากขึ้นเท่านั้นผ่านสัญญาอัจฉริยะของสินทรัพย์นั้น Andy Rosen (แอนดี้ โรเซ็น) นักเขียนด้านการลงทุนของ Nerdwallet กล่าวว่า “ในทางกลับกัน ผู้ซื้อที่สนับสนุนผู้สร้างที่กำลังลำบากด้วยการซื้อ NFT อาจมีโอกาสได้ส่วนแบ่งรายรับจากโครงการอื่น ๆ ในภายภาคหน้า”  Rosen อธิบายถึงอีกวิธีการหนึ่งซึ่ง NFT สามารถสร้างมูลค่าได้โดยการใช้วิธีลงทุนขยายธุรกิจอย่างต่อเนื่องและยก VeeFriends ของนักลงทุน Gary Vaynerchuk (แกรีย์ เวย์เนอร์ชัค) มาเป็นตัวอย่าง คนที่ซื้อ NFT ชุดนี้หนึ่งชุด จะได้รับตั๋วฟรีเข้าร่วม VeeCon ซึ่งเป็นการประชุมใหญ่ทางธุรกิจประจำปีของ Vaynerchuk อีกทั้งยังเป็น “งานอีเว้นท์สำหรับผู้ถือ NFT [VeeFriend] โดยเฉพาะ” อีกด้วย บางคนอาจประหลาดใจเมื่อทราบว่า หากอ้างอิงจากแนวคิดทั่ว ๆ ไปนั้น NFT ไม่มีมูลค่าที่แท้จริงอยู่เลย แต่นี่ก็ไม่ได้หมายความว่า NFT ในฐานะสินทรัพย์ดิจิทัลกลุ่มหนึ่งจะไม่มีมูลค่า แม้ว่าจะมีหลายปัจจัยที่มีอิทธิพลต่อมูลค่าที่ NFT หนึ่ง ๆ จะถูกตีราคา แต่ปัจจัยเหล่านั้นแทบทั้งหมดได้รับอิทธิพลและถูกกำหนดโดยตลาดผู้ใช้เพียงอย่างเดียว ยิ่ง NFT หายากหรือมีประโยชน์มากเท่าไร หรือยิ่งสินทรัพย์บางอย่างมีศักยภาพในการลงทุนสูงเท่าไร ผู้ใช้หลายคนยิ่งมองเห็นมูลค่าสูงมากขึ้นเท่านั้น หากไม่มีมูลค่าที่รับรู้จากตลาด NFT ก็ไม่ได้มีมูลค่ามากไปกว่าสินทรัพย์หรือสินค้าโภคภัณฑ์อื่น ๆ เนื่องจากหลายๆ คนยังถือว่า NFT เป็นนวัตกรรมใหม่ ศักยภาพที่แท้จริงของมันในฐานะสิ่งสร้างมูลค่าจึงยังคงถูกมองข้ามอยู่  แม้ว่าอาจมีเปลี่ยนแปลงในอนาคต แต่จนกว่าวันนั้นจะมาถึง NFT ก็มีมูลค่าแค่เท่าที่ตลาดเห็นว่ามันมี บทความโดย Hironobu Uenoเนื้อหาจากบทความของ InformationWeekแปลและเรียบเรียงโดย ไอสวรรค์ ไชยชะนะตรวจทานและปรับปรุงโดย ดวงใจ จิตคงชื่น
24 August 2022
พื้นฐานการใช้งาน Data Analysis Expressions (DAX)
ในการสร้าง Data Visualization จะต้องมีการจัดการข้อมูลเพื่อให้อยู่ในรูปแบบที่เหมาะสมสำหรับในไปใช้ในการสร้าง Dashboard สำหรับใน Power BI เรามีเครื่องมือที่ใช้ในการจัดการข้อมูลที่เรียกว่า DAX สำหรับบทความนี้ เราจะสำรวจว่า DAX คืออะไร และจัดเตรียมข้อมูลในขั้นลึกขึ้นโดยใช้เครื่องมือตัวนี้กัน DAX คืออะไร Data Analysis Expressions หรือที่เรียกกันโดยทั่วไปว่า DAX คือชุดฟังก์ชันเพื่อทำงานกับข้อมูลในผลิตภัณฑ์ของไมโครซอฟต์ เช่น Power Pivot, Power BI และ SQL Analysis Server ชุดฟังก์ชันของ DAX จะคล้ายกับชุดฟังก์ชันที่ใช้งานบนโปรแกรม Excel โดยชุดฟังก์ชันที่ใช้งานบน Excel จะทำงานกับข้อมูลในลักษณะที่เป็น แผ่นงาน (Worksheet), ตาราง (Table) และเซล (Cell) ในขณะที่ชุดฟังก์ชันของ DAX จะทำงานกับข้อมูลในลักษณะที่เป็น ตาราง (Table), คิวรี่ (Query), คอลัมน์ข้อมูล (Column) และแถวข้อมูล (Row) จึงทำให้การออกแบบฟังก์ชันและอากิวเมนต์ของชุดฟังก์ชันของ DAX และชุดฟังก์ชันที่ใช้งานบน Excel แตกต่างกัน ในบทความนี้เราจะพูดถึงสิ่งที่ควรทราบในการใช้งานชุดฟังก์ชันของ DAX และพื้นฐานในการใช้งานชุดฟังก์ชันของ DAX โดยอ้างอิงการใช้งานในโปรแกรม Power BI ชนิดของข้อมูลใน DAX ข้อมูลที่เป็นตัวเลข ข้อมูลที่ไม่ใช่ตัวเลข เลขทศนิยม (Decimal Number)เลขทศนิยมคงที่ (Fixed Decimal Number)จำนวนเต็ม (Whole Number)เปอร์เซ็นต์ (Percent)วันที่/เวลา (Date/Time)วันที่ (Date)เวลา (Time)วันที่/เวลา/โซนเวลา (Date/Time/Timezone)ระยะเวลา (Duration)จริง/เท็จ (True/False หรือ Boolean) ข้อความ (Text หรือ String)ไบนารี่ (Binary หรือ Blob) การอ้างอิงถึงตารางข้อมูล การอ้างอิงถึงตารางข้อมูลใน DAX จะใช้เครื่องหมาย Single Quotation Marks ‘…' ครอบชื่อตารางข้อมูล เช่น ตารางข้อมูล FacotoryData จะถูกเขียนอ้างอิงด้วย ‘FactoryData' (ถ้าชื่อตารางไม่มีช่องว่าง สามารถยกเว้นการใส่เครื่องหมาย Single Quotation Marks ได้) การอ้างอิงถึงคอลัมน์ข้อมูลในตาราง การอ้างอิงถึงคอลัมน์ข้อมูลในตาราง จะใช้เครื่องหมาย Square Brackets […] ครอบชื่อคอลัมน์ข้อมูล เช่น คอลัมน์ชื่อ Country จะถูกเขียนอ้างอิงด้วย [Country] เช่น คอลัมน์ชื่อ Country ในตาราง Province จะถูกเขียนอ้างอิงด้วย ‘Province'[Country] คอลัมน์คำนวณ (Calculated Column) คอลัมน์คำนวณ เป็นการสร้างคอลัมน์ใหม่เพิ่มเติมเข้าไปในตารางข้อมูลใน Data Model ของ Power BI (ไม่ได้เพิ่มคอลัมน์ใหม่ในไฟล์ข้อมูลต้นทาง) การประมวลผลค่าข้อมูลใน Calculated Column จะเกิดขึ้นเมื่อมีการประมวลผลข้อมูลจาก Data Model แล้วนำผลที่ได้จากการประมวลผลจัดเก็บลงในคอลัมน์ใหม่ที่สร้างขึ้น ค่าที่ได้จะปรากฏในตารางข้อมูล คอลัมน์คำนวณจะทำงานกับแถวข้อมูลปัจจุบัน (Current Row) การคำนวณจะอยู่บนพื้นฐานของข้อมูลแถวนั้น ๆ และนำค่าที่ได้มาใส่ไว้ในคอลัมน์ใหม่ที่สร้างขึ้นบนแถวข้อมูลเดียวกัน เช่น ในรูปที่ 1 ตารางข้อมูล Order ทำการสร้างคอลัมน์ใหม่เพื่อเก็บข้อมูลยอดขาย ตั้งชื่อคอลัมน์ว่า Sales โดยคอลัมน์นี้เกิดจากการคำนวณของคอลัมน์จำนวน (Amount) และคอลัมน์ราคาต่อหน่วย (UnitPrice) บนแถวข้อมูลปัจจุบัน สามารถสร้างคอลัมน์คำนวณโดยเขียนคำสั่งดังรูป สูตรคำนวณ (Measure) สูตรคำนวณ เป็นการสร้างสูตรสำหรับการคำนวณข้อมูล โดยสูตรจะอยู่ในรูปของนิพจน์ Expression ในตารางข้อมูล ส่วนใหญ่มักใช้งานร่วมกับฟังก์ชันผลรวม (Aggregate) ต่าง ๆ เช่น การหาค่าผลรวม, การหาค่าเฉลี่ย, การหาค่าต่ำสุดหรือสูงสุด ฟังก์ชันหรือสูตรจะถูกประมวลผลเมื่อมีการเรียกดูข้อมูลหรือแสดงผล ดังนั้นผลของการคำนวณ Measure จะไม่ปรากฏในตารางข้อมูล แต่จะเป็นการบันทึกสูตรเก็บไว้สำหรับการเรียกคำนวณเมื่อมีการต้องการแสดงผล เช่น ในรูปที่ 2 ตารางข้อมูล Order ต้องการคำนวณค่าผลรวมของยอดขาย ตั้งชื่อ Measure ว่า SumSales สามารถสร้างสูตรคำนวณโดยเขียนคำสั่งดังรูป ตารางคำนวณ (Calculated Table) ตารางคำนวณ คือตารางข้อมูลที่เกิดขึ้นจากการใช้ฟังก์ชันตารางใน DAX เช่น FILTER, VALUES, ALL โดยเมื่อสั่งให้ฟังก์ชันทำงานแล้ว ฟังก์ชันจะส่งค่ากลับมาเป็นตารางข้อมูล ไม่ใช่ค่าข้อมูลเพียงค่าเดียว และเมื่อได้ตารางข้อมูลแล้วอาจจะมีการนำตารางเข้าไปทำงานต่อในสูตรคำนวณหรือคอลัมน์คำนวณทันที หรืออาจจะเก็บไว้เป็นตารางในระบบเพื่อไว้ใช้งานต่อ เช่น จากตารางข้อมูล Order ทำการสร้างตารางใหม่ ตั้งชื่อว่า ItemSales โดยทำการกรองข้อมูลจากตาราง Order เลือกค่าของข้อมูลที่คอลัมน์ Amount มีค่ามากกว่า 10 ชุดฟังก์ชันใน DAX ชุดฟังก์ชันใน DAX สามารถแบ่งเป็นหมวดหมู่ได้ประมาณ 11 หมวดหมู่ แยกตามลักษณะการใช้งานได้ดังต่อไปนี้ ตัวอย่างการใช้งาน ต่อไปเราจะมาทดลองการใช้งานฟังก์ชัน DAX ในหมวดวันที่และเวลา (Date and Time Functions) โดยใช้งานฟังก์ชันผ่านรูปแบบของคอลัมน์คำนวณ และสูตรคำนวณ โดยทดลองการใช้งานในโปรแกรม Power BI Desktop เริ่มจาก เลือกมุมมองเป็น Data View คลิกเลือกคอลัมน์ FullDate แล้วไปที่เมนู Column tools > Format สามารถเลือกเปลี่ยนมุมมองการแสดงผลข้อมูลวันที่ได้ (เป็นการเปลี่ยนเฉพาะมุมมองในการแสดงผล ไม่ได้เปลี่ยนในไฟล์ข้อมูล) ในที่นี้ทดลองเปลี่ยนรูปแบบการแสดงผลเป็น วัน/เดือน/ปี (dd/mm/yyyy) ฟังกชัน DAY ใช้แสดงข้อมูลหมายเลขวันที่ (สังเกตผลลัพธ์ในคอลัมน์ที่ถูกสร้างขึ้น) สรุปตัวอย่างการใช้งานฟังก์ชันวันที่และเวลา โดยคำนวณในรูปแบบ Calculated Column จะสังเกตเห็นว่า ผลของการสร้างสูตรคำนวณ (Measure) จะไม่ปรากฏในตารางข้อมูล แต่จะเป็นการบันทึกสูตรเก็บไว้สำหรับการเรียกคำนวณเมื่อมีการต้องการแสดงผล ดังนั้นเราจึงต้องนำ Measure ที่สร้างขึ้นไปทำการแสดงผล จึงจะเห็นผลลัพธ์จากการคำนวณดังกล่าว โดยเลือกมุมมองเป็น Design View ไปที่แถบ Visualizations > คลิกเลือก Visual ที่ชื่อว่า Card จากนั้นคลิกเลือก หรือ...
10 January 2022
การเตรียมข้อมูลเบื้องต้นด้วย Power BI (Basic Data Preparation with Power BI)
Microsoft Power BI เป็นซอฟต์แวร์ตัวหนึ่งในกลุ่มของเครื่องมือสำหรับการสร้าง Data Visualization ซึ่งกำลังได้รับความนิยมเพิ่มมากขึ้นในปัจจุบัน ซึ่งนอกจากจะมีความสามารถในการสร้าง Data Visualization แล้ว ยังมีความสามารถในการบริหารจัดการข้อมูล รวมไปถึงการเตรียมข้อมูลให้เหมาะสมสำหรับการนำไปสร้าง Data Visualization กลุ่มผลิตภัณฑ์ของ Power BI แบ่งหลัก ๆ ออกเป็น Power BI Desktop แอปพลิเคชันสำหรับเครื่องเดสก์ท็อป Windows, Power BI Service ให้บริการ SaaS (Software as a Service) แบบออนไลน์ที่, Power BI Mobile แอปพลิเคชันสำหรับอุปกรณ์เคลื่อนที่ และ Power BI Report Server องค์ประกอบของโปรแกรม สำหรับในส่วนของโปรแกรม Power BI Desktop มีการแบ่งส่วนการทำงานออกเป็น 2 ส่วนด้วยกันคือ (1) Power BI Desktop เป็นส่วนที่ใช้ในการสร้าง Visualization และ (2) Power Query เป็นส่วนที่ใช้สำหรับการบริหารจัดการเกี่ยวกับข้อมูล เช่น กระบวนการทำความสะอาดข้อมูล (Data cleansing หรือ Data scrubbing) หรือกระบวนการแปลงข้อมูล (Data Transformation) ในบทความนี้เราจะมาลองสำรวจรูปแบบการบริหารจัดการข้อมูลรูปแบบต่าง ๆ ที่พบกันได้บ่อยในการทำงานกับข้อมูล พร้อมทั้งคำสั่งที่เกี่ยวข้องไปด้วยกัน การเตรียมข้อมูลเบื้องต้นด้วย Power BI 1. การลบแถวข้อมูล (คำสั่ง Remove Rows) ที่ Ribbon Home > Remove Rows > Remove Top Rows > Number of rows: 2 (ระบุจำนวนแถวข้อมูลที่ต้องการลบ) 2. การตั้งแถวแรกให้เป็นชื่อคอลัมน์ ในการนำเข้าข้อมูลที่เป็นไฟล์ Excel แล้วพบว่าแถวข้อมูลที่ควรจะเป็นหัวตารางหรือชื่อคอลัมน์ กลับกลายเป็นส่วนหนึ่งของชุดข้อมูล กรณีเช่นนี้สามารถแก้ไขได้โดยใช้คำสั่ง Use First Row as Headers : ที่ Ribbon Home > User First Row as Headers 3. การลบคอลัมน์ (คำสั่ง Remove Columns) คลิกเลือกคอลัมน์ที่ต้องการลบ แล้วไปที่ Ribbon Home > Remove Columns 4. การปรับเปลี่ยนชนิดหรือรูปแบบของข้อมูล (คำสั่ง Data Type Setting) * ส่วนนี้จะทำงานที่ Power BI Desktop 5. การแยกคอลัมน์ (คำสั่ง Split Column) ในการจัดเก็บข้อมูลอาจจะพบลักษณะการจัดเก็บหลาย ๆ ข้อมูลในคอลัมน์เดียวกัน ตัวอย่างเช่น (ดูรูปประกอบ) มีการเก็บข้อมูลชื่อหนัง (ปีที่เริ่มฉาย) อยู่ภายในคอลัมน์เดียวกัน หากเราต้องการแยกข้อมูลสองเรื่องนี้ออกจากกัน สามารถใช้คำสั่งในการแยกคอลัมน์ได้ แต่จะต้องมีเงื่อนไขที่สามารถแยกคอลัมน์นั้น ๆ เช่น มีสัญลักษณ์พิเศษ หรือแยกตามตำแหน่งที่ระบุ 6. การรวบคอลัมน์ด้วยคำสั่ง Unpivot ในการเก็บข้อมูล โดยเฉพาะอย่างยิ่งรูปแบบของไฟล์ Excel ที่นอกจากจะเป็นการเก็บข้อมูลแล้ว ยังเป็นการแสดงข้อมูลในรูปแบบของรายงานด้วย ตัวอย่างเช่น (ดูรูปประกอบ) แสดงข้อมูลยอดขายรายเดือนในรายคอลัมน์ และแสดงข้อมูลรายปีในรายแถวข้อมูล หากต้องการนำข้อมูลลักษณะดังกล่าวมาสร้างเป็นกราฟ เพื่อให้สามารถเปรียบเทียบยอดขายรายเดือนได้ จะต้องทำการรวมคอลัมน์เดือนดังกล่าวให้เป็นคอลัมน์เดียวกัน ลักษณะนี้สามารถทำได้ด้วยการใช้คำสั่ง Unpivot Columns 7. การรวมข้อมูลในลักษณะของการรวมแถวข้อมูล (คำสั่ง Append Queries) หลาย ๆ ครั้งในการเก็บข้อมูลในรูปแบบของไฟล์ Excel จะมีการเก็บข้อมูลที่มีรูปแบบเดียวกัน แต่แยกเป็นหลาย ๆ Sheet เพื่อความสะดวกในการทำรายงานสรุป แต่เมื่อต้องการนำข้อมูลทั้งหมดมารวมกันเพื่อวิเคราะห์เปรียบเทียบ จะต้องทำการรวมข้อมูลจากหลาย ๆ Sheet หรือแม้กระทั่งหลาย ๆ ไฟล์ ลักษณะนี้สามารถทำได้ด้วยการใช้คำสั่ง Append Queries แต่มีข้อสังเกตคือการจะรวมแถวข้อมูลได้นั้น ข้อมูลในแต่ละ Sheet หรือแต่ละไฟล์ จะต้องมีรูปแบบโครงสร้างแบบเดียวกัน เช่น มีจำนวนคอลัมน์, ชื่อคอลัมน์, ลำดับของคอลัมน์ ที่เหมือนกัน 8. การรวมข้อมูลในลักษณะของการอ้างอิงคอลัมน์ (คำสั่ง Merge Queries) จะเป็นการรวมข้อมูลจาก 2 ตาราง/Sheet/ไฟล์ โดยมีคอลัมน์อ้างอิงข้อมูลซึ่งกันและกัน เช่น ข้อมูลรายละเอียดการขายสินค้า กับข้อมูลสินค้า จะมีคอลัมน์อ้างอิงกันคือคอลัมน์รหัสสินค้า การรวมข้อมูลลักษณะนี้สามารถทำได้ด้วยการใช้คำสั่ง Merge Queries จากที่ได้กล่าวมา เป็นเพียงตัวอย่างการใช้งาน Power BI ในการเตรียมข้อมูลเบื้องต้นเท่านั้น ทั้งนี้ตัวโปรแกรมเองยังมีความสามารถในการเตรียมข้อมูลในลักษณะอื่นๆ อีก ซึ่งความสามารถในส่วนนี้มีความสำคัญและช่วยให้การสร้าง Visualization สะดวกมากขึ้น
24 April 2021
การสร้าง Shape Map ใน Power BI จาก COVID-19 data ที่ดึงมาจาก data.go.th
สถานการณ์โรคระบาด COVID-19 ในขณะนี้ยังคงต้องเฝ้าระวังกันอย่างต่อเนื่อง เมื่อทางศูนย์กลางการให้บริการข้อมูลเปิดภาครัฐ (Open Government Data) ภายใต้ชื่อ data.go.th ได้เปิดชุดข้อมูลรายงาน COVID-19 ประจำวัน ซึ่งเป็นรายงานผู้ป่วยยืนยันประจำวันจากกรมควบคุมโรค เราจะลองเอาข้อมูลชุดนี้มาสร้างเป็นแผนที่เพื่อแสดงจำนวนผู้ป่วยติดเชื้อในแต่ละจังหวัด โดยใช้เครื่องมือที่ชื่อว่า Shape Map ในโปรแกรม Power BI ก่อนอื่นเราต้องเตรียมอุปกรณ์หลัก 3 อย่างสำหรับการสร้าง Shape Map แบบที่เราต้องการ คือ 1. ข้อมูลผู้ป่วยติดเชื้อ COVID-19 จากศูนย์กลางการให้บริการข้อมูลเปิดภาครัฐ (Open Government Data) (https://www.data.go.th/dataset/covid-19-daily) ซึ่งให้ข้อมูลทั้งในรูปแบบของ Excel File และ API ในกรณีนี้เราจะดึงข้อมูลผ่าน API เพื่อให้การอัพเดตข้อมูลสะดวกขึ้น เริ่มจากทำการสมัครเพื่อเป็นผู้ใช้งาน API ก่อนที่ https://opend.data.go.th/register_api/ หลังจากสมัครเรียบร้อยเราจะได้ User Token สำหรับเรียกใช้งาน API แล้วไปดูคู่มือการใช้งาน Data.go.th API (https://data.go.th/pages/data-go-th-api) เพื่อดูว่าต้องใช้ Header อะไรบ้างในการเชื่อมต่อ 2. พิกัดแผนที่สำหรับวาด Shape Map เนื่องจาก Shape Map ใน Power BI ไม่มีพิกัดแผนที่ประเทศไทย แต่สามารถเพิ่มข้อมูลในส่วนนี้ได้ โดยเริ่มจากไปดาวน์โหลด Shapefiles จาก https://github.com/apisit/thailand.json/tree/master/TH_shape แล้วนำไฟล์ที่ดาวน์โหลดมาทั้งหมดไปแปลงเป็น TopoJSON เนื่องจาก Power BI รองรับเฉพาะไฟล์ TopoJSON ผ่านโปรแกรม Map Shaper (https://mapshaper.org/) 3. ข้อมูลรายชื่อจังหวัดภาษาอังกฤษ เนื่องจากข้อมูลผู้ป่วยที่ได้จาก data.go.th ไม่มีข้อมูลจังหวัดที่เป็นภาษาอังกฤษ ซึ่งจำเป็นต้องใช้ร่วมกับ Shapefiles TopoJSON แต่สามารถเพิ่มข้อมูลในส่วนนี้ได้ โดยเริ่มจากไปดาวน์โหลดไฟล์ ThepExcel-Thailand-Tambon.xlsx จาก https://github.com/ThepExcel/download/blob/master/ThepExcel-Thailand-Tambon.xlsx แล้วทำการ Clean Data ให้เหลือเฉพาะข้อมูลที่ต้องการ ดังนี้ * ต้องตรวจสอบการสะกดชื่อจังหวัดภาษาอังกฤษ ให้ตรงกับ Shapefiles TopoJSON เมื่ออุปกรณ์พร้อมแล้วก็ลงมือสร้าง Shape Map กันได้เลย 1. เปิดโปรแกรม Power BI Desktop ขึ้นมาแล้วไปที่เมนู Home > Get Data > Web จะปรากฎหน้าต่างให้ใส่ค่า URL parts ค่านี้ดูได้จาก data.go.th (https://www.data.go.th/dataset/covid-19-daily) เมื่อกดปุ่ม Data API จะปรากฏหน้าต่างให้เลือกวิธีการเรียกข้อมูล ให้เลือกเป็นวิธีการเรียกข้อมูล โดยการใช้คำสั่ง SQL แบบไม่มีเงื่อนไข (ไม่มี WHERE clause) https://opend.data.go.th/get-ckan/datastore_search_sql?sql=SELECT * from "93f74e67-6f76-4b25-8f5d-b485083100b6" คัดลอกคำสั่งมาใส่ในหน้าต่าง From Web ในส่วนของ URL parts และในส่วนของ HTTP request header parameters ให้ใส่ Header เป็น api-key ตามด้วยค่า User Token ที่ได้จากการสมัครเพื่อเป็นผู้ใช้งาน API เมื่อเชื่อมต่อข้อมูลสำเร็จจะปรากฎหน้าต่างของ Power Query Editor (1) คลิกเลือก Record หลังคอลัมน์ result (2) คลิกเลือก List หลังคอลัมน์ records (หากต้องการโครงสร้างข้อมูล คลิกเลือก List หลังคอลัมน์ fields) (3) คลิกเมนู Convert to Table (4) คลิกปุ่ม Expand คอลัมน์ (5) จะปรากฏชุดข้อมูล (Dataset) ที่ดึงมาจาก API (6) จัดการ Clean Data ข้อมูลจังหวัด เสร็จแล้วคลิกเมนู Close & Apply เพื่อโหลดข้อมูลเข้าสู่ Power BI 2. โหลดข้อมูลรายชื่อจังหวัดภาษาอังกฤษเข้ามาเพิ่ม โดยไปที่เมนู เมนู Home > Get Data > Excel เลือก Sheet ที่ต้องการแล้วกดโหลด 3. สร้างความสัมพันธ์ของข้อมูล คลิกเลือกมุมมอง Model > Manage Relationships > New แล้วเลือกชื่อจังหวัดภาษาไทยเป็นฟิลด์ที่แสดงความสัมพันธ์ของข้อมูล จะได้ความสัมพันธ์ของข้อมูลเป็นดังรูป 4. คลิกเลือกมุมมอง Report > คลิกเลือก Shape Map จาก Visualizations Pane > ลากฟิลด์ ProvinceEng มาใส่ในช่อง Location > ไปที่ Format Setting > ในช่อง Shape เลือก Add map แล้วคลิกเลือก Shapefiles TopoJSON ที่เตรียมไว้ (ถ้าการสะกดชื่อจังหวัดภาษาอังกฤษ ไม่ตรงกับ Shapefiles TopoJSON จะปรากฎแถบสีไม่ครบทุกจังหวัด) คลิกขวาที่ตาราง COVID-19 แล้วเลือก New measure เพื่อสร้างฟิลด์คำนวณจำนวนผู้ติดเชื้อ ใส่สูตรเป็น CountData = COUNTROWS('COVID-19') 5. ลาก measure ที่สร้างขึ้นมาใส่ในช่อง Color saturation > ไปที่ Format Setting > ในช่อง Data colors เลือกปรับแต่งเฉดสีตามที่ต้องการ 6. ปรับแต่งการแสดงผลตามต้องการ ก็จะได้ Shape Map รายงานจำนวนผู้ติดเชื้อ COVID-19
3 April 2020
PDPA Icon

We use cookies to optimize your browsing experience and improve our website’s performance. Learn more at our Privacy Policy and adjust your cookie settings at Settings

Privacy Preferences

You can choose your cookie settings by turning on/off each type of cookie as needed, except for necessary cookies.

Accept all
Manage Consent Preferences
  • Strictly Necessary Cookies
    Always Active

    This type of cookie is essential for providing services on the website of the Personal Data Protection Committee Office, allowing you to access various parts of the site. It also helps remember information you have previously provided through the website. Disabling this type of cookie will result in your inability to use key services of the Personal Data Protection Committee Office that require cookies to function.
    Cookies Details

  • Performance Cookies

    This type of cookie helps the Big Data Institute (Public Organization) understand user interactions with its website services, including which pages or areas of the site are most popular, as well as analyze other related data. The Big Data Institute (Public Organization) also uses this information to improve website performance and gain a better understanding of user behavior. Although the data collected by these cookies is non-identifiable and used solely for statistical analysis, disabling them will prevent the Big Data Institute (Public Organization) from knowing the number of website visitors and from evaluating the quality of its services.

  • Functional Cookies

    This type of cookie enables the Big Data Institute (Public Organization)’s website to remember the choices you have made and deliver enhanced features and content tailored to your usage. For example, it can remember your username or changes you have made to font sizes or other customizable settings on the page. Disabling these cookies may result in the website not functioning properly.

  • Targeting Cookies

    "This type of cookie helps the Big Data Institute (Public Organization) understand user interactions with its website services, including which pages or areas of the site are most popular, as well as analyze other related data. The Big Data Institute (Public Organization) also uses this information to improve website performance and gain a better understanding of user behavior. Although the data collected by these cookies is non-identifiable and used solely for statistical analysis, disabling them will prevent the Big Data Institute (Public Organization) from knowing the number of website visitors and from evaluating the quality of its services.

Save settings