วิธีสร้าง Python Heatmap ด้วย Seaborn [คำอธิบายที่ครอบคลุม]
เผยแพร่แล้ว: 2021-10-06ธุรกิจในยุคของ Big Data เต็มไปด้วยข้อมูลจำนวนมากในแต่ละวัน อย่างไรก็ตาม ไม่ใช่จำนวนข้อมูลที่เกี่ยวข้องทั้งหมด แต่มีความสำคัญกับข้อมูลอย่างไร ดังนั้นจึงต้องวิเคราะห์ข้อมูลขนาดใหญ่เพื่อให้ได้ข้อมูลเชิงลึกที่จะกำหนดการตัดสินใจที่ดีขึ้นในท้ายที่สุดและมีอิทธิพลต่อการขับเคลื่อนธุรกิจเชิงกลยุทธ์
ยังคงไม่เพียงพอที่จะวิเคราะห์ข้อมูลและปล่อยไว้ที่นั่น ขั้นตอนต่อไปคือการสร้างภาพข้อมูลที่นำเสนอข้อมูลในรูปแบบภาพเพื่อดูและทำความเข้าใจรูปแบบ แนวโน้ม และค่าผิดปกติในข้อมูล Heatmap ใน Python เป็นหนึ่งในเทคนิคการสร้างภาพข้อมูล
การแสดงข้อมูลเป็นภาพหมายถึงการแสดงข้อมูลแบบกราฟิกและอาจรวมถึงกราฟ แผนภูมิ แผนที่ และองค์ประกอบภาพอื่นๆ เป็นสิ่งสำคัญอย่างยิ่งในการวิเคราะห์ข้อมูลจำนวนมหาศาลและการตัดสินใจโดยใช้ข้อมูลเป็นหลัก
บทความนี้จะแนะนำคุณเกี่ยวกับแนวคิดของแผนที่ความร้อนใน Python และวิธีสร้างแผนที่โดยใช้ Seaborn
สารบัญ
แผนที่ความร้อนคืออะไร?
แผนที่ความหนาแน่นใน Python เป็นเทคนิคการสร้างภาพข้อมูลโดยที่สีจะแสดงว่าค่าที่น่าสนใจเปลี่ยนแปลงไปอย่างไรกับค่าของตัวแปรอื่นๆ อีก 2 ตัว เป็นการแสดงข้อมูลแบบกราฟิกสองมิติด้วยค่าที่เข้ารหัสด้วยสี จึงให้มุมมองข้อมูลที่เรียบง่าย ลึกซึ้ง และดึงดูดสายตา ภาพด้านล่างเป็นการแสดงแผนที่ความหนาแน่นอย่างง่าย
โดยทั่วไป แผนที่ความหนาแน่นคือตารางข้อมูลที่มีแถวและคอลัมน์ที่แสดงถึงชุดหมวดหมู่ต่างๆ แต่ละเซลล์ในตารางมีค่าตรรกะหรือตัวเลขที่กำหนดสีของเซลล์ตามจานสีที่กำหนด ดังนั้น แผนที่ความร้อนจึงใช้สีเพื่อเน้นความสัมพันธ์ระหว่างค่าข้อมูลที่อาจเข้าใจได้ยากหากจัดเรียงในตารางปกติโดยใช้ตัวเลขดิบ
แผนที่ความหนาแน่นจะค้นหาแอปพลิเคชันในสถานการณ์จริงต่างๆ ตัวอย่างเช่น พิจารณาแผนที่ความร้อนด้านล่าง เป็นแผนที่ความหนาแน่นของดัชนีหุ้นที่ระบุแนวโน้มในตลาดหุ้น แผนที่ความหนาแน่นใช้รูปแบบสีเย็นถึงร้อนเพื่อแสดงว่าหุ้นใดเป็นขาลงและหุ้นใดเป็นขาขึ้น อันแรกใช้สีแดงแทน ส่วนหลังใช้สีเขียว
แหล่งที่มา
แผนที่ความหนาแน่นมีประโยชน์ในด้านอื่นๆ อีกหลายประการ ตัวอย่างบางส่วน ได้แก่ แผนที่ความหนาแน่นของเว็บไซต์ แผนที่ความหนาแน่นทางภูมิศาสตร์ และแผนที่ความหนาแน่นของกีฬา ตัวอย่างเช่น คุณสามารถใช้แผนที่ความร้อนเพื่อทำความเข้าใจว่าปริมาณน้ำฝนแตกต่างกันไปในแต่ละเดือนของปีในแต่ละเมืองอย่างไร แผนที่ความหนาแน่นยังมีประโยชน์อย่างมากในการศึกษาพฤติกรรมของมนุษย์
แผนที่ความร้อนสหสัมพันธ์
แผนที่ความหนาแน่นสหสัมพันธ์เป็นเมทริกซ์สองมิติที่แสดงความสัมพันธ์ระหว่างตัวแปรที่แตกต่างกันสองตัว แถวของตารางแสดงค่าของตัวแปรตัวแรก ในขณะที่ตัวแปรที่สองจะปรากฏเป็นคอลัมน์ เช่นเดียวกับแผนที่ความหนาแน่นปกติ แผนที่ความหนาแน่นแบบสหสัมพันธ์ยังมาพร้อมกับแถบสีเพื่ออ่านและทำความเข้าใจข้อมูล
แบบแผนชุดสีที่ใช้เป็นแบบที่ปลายด้านหนึ่งของชุดสีแสดงถึงจุดข้อมูลค่าต่ำ และอีกด้านสิ้นสุดจุดข้อมูลค่าสูง ดังนั้น แผนที่ความหนาแน่นของสหสัมพันธ์จึงเหมาะอย่างยิ่งสำหรับการวิเคราะห์ข้อมูล เนื่องจากนำเสนอรูปแบบในรูปแบบที่อ่านง่าย ในขณะเดียวกันก็เน้นความผันแปรในข้อมูลด้วย
รับด้านล่างเป็นการแสดงแบบคลาสสิกของแผนที่ความร้อนสหสัมพันธ์
แหล่งที่มา
การสร้าง Seaborn Heatmap ใน Python
Seaborn เป็นไลบรารี Python ที่ใช้สำหรับการสร้างภาพข้อมูลและอิงจาก matplotlib เป็นสื่อที่ให้ข้อมูลและดึงดูดสายตาเพื่อนำเสนอข้อมูลในรูปแบบกราฟสถิติ ในแผนที่ความหนาแน่นที่สร้างขึ้นโดยใช้ Seaborn จานสีจะแสดงถึงความผันแปรในข้อมูลที่เกี่ยวข้อง หากคุณเป็นมือใหม่และต้องการได้รับความเชี่ยวชาญด้านวิทยาศาสตร์ข้อมูล โปรดดูหลักสูตรวิทยาศาสตร์ข้อมูลของเรา
ขั้นตอนในการสร้างแผนที่ความร้อนใน Python
ขั้นตอนต่อไปนี้ให้โครงร่างคร่าวๆ เกี่ยวกับวิธีสร้างแผนที่ความหนาแน่นอย่างง่ายใน Python:
- นำเข้าแพ็คเกจที่จำเป็นทั้งหมด
- นำเข้าไฟล์ที่คุณได้จัดเก็บข้อมูลของคุณ
- พล็อตแผนที่ความร้อน
- แสดงแผนที่ความหนาแน่นโดยใช้ matplotlib
ตอนนี้ ให้เราแสดงให้คุณเห็นถึงวิธีที่สามารถนำมาใช้สร้างแผนที่ความร้อนร่วมกับ matplotlib และแพนด้าได้
ในตัวอย่างนี้ เราจะสร้างแผนที่ความร้อนจากทะเลใน Python สำหรับหุ้นของบริษัทเภสัชกรรม 30 แห่ง แผนที่ความหนาแน่นที่ได้จะแสดงสัญลักษณ์หุ้นและการเปลี่ยนแปลงราคาเป็นเปอร์เซ็นต์ในวันเดียวตามลำดับ เราจะเริ่มต้นด้วยการรวบรวมข้อมูลตลาดของหุ้นยา และสร้างไฟล์ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) ซึ่งประกอบด้วยสัญลักษณ์หุ้นและเปอร์เซ็นต์การเปลี่ยนแปลงของราคาที่สอดคล้องกันในสองคอลัมน์แรกของไฟล์ CSV ดังกล่าว
เนื่องจากเรากำลังทำงานร่วมกับบริษัทยา 30 แห่ง เราจะสร้างเมทริกซ์แผนที่ความหนาแน่นที่ประกอบด้วย 6 แถวและ 5 คอลัมน์ นอกจากนี้ เราต้องการให้แผนที่ความหนาแน่นแสดงเปอร์เซ็นต์การเปลี่ยนแปลงราคาในลำดับจากมากไปน้อย ดังนั้น เราจะจัดเรียงสต็อคในไฟล์ CSV ตามลำดับจากมากไปน้อย และเพิ่มคอลัมน์อีกสองคอลัมน์เพื่อระบุตำแหน่งของแต่ละสต็อคบนแกน X และ Y ของแผนที่ความหนาแน่นที่เกิดในทะเล
ขั้นตอนที่ 1: นำเข้าแพ็คเกจ Python
แหล่งที่มา
ขั้นตอนที่ 2: กำลังโหลดชุดข้อมูล
ชุดข้อมูลถูกอ่านโดยใช้ฟังก์ชัน read_csv จากแพนด้า นอกจากนี้ เราใช้คำสั่งพิมพ์เพื่อแสดงภาพ 10 แถวแรก
แหล่งที่มา
ขั้นตอนที่ 3: การสร้างอาร์เรย์ Python Numpy
โดยคำนึงถึงเมทริกซ์ขนาด 6 x 5 เราจะสร้างอาร์เรย์ n มิติสำหรับคอลัมน์ "สัญลักษณ์" และ "เปลี่ยน"
แหล่งที่มา
ขั้นตอนที่ 4: การสร้างเดือยใน Python
จาก data frame object ที่กำหนด "df" ฟังก์ชัน pivot จะสร้างตารางที่ได้รับใหม่ ฟังก์ชัน pivot รับอาร์กิวเมนต์สามตัว ได้แก่ ดัชนี คอลัมน์ และค่า ค่าของเซลล์ของตารางใหม่นำมาจากคอลัมน์ "เปลี่ยน"
แหล่งที่มา
ขั้นตอนที่ 5: การสร้างอาร์เรย์เพื่อใส่คำอธิบายประกอบในแผนที่ความหนาแน่น
ขั้นตอนต่อไปคือการสร้างอาร์เรย์สำหรับใส่คำอธิบายประกอบแผนที่ความร้อนที่เกิดในท้องทะเล สำหรับสิ่งนี้ เราจะเรียกเมธอด flatten ในอาร์เรย์ "percentage" และ "symbol" เพื่อทำให้รายการ Python เรียบขึ้นในหนึ่งบรรทัด นอกจากนี้ ฟังก์ชัน zip ยังซิปรายการใน Python เราจะเรียกใช้ Python for loop และใช้ฟังก์ชันการจัดรูปแบบเพื่อจัดรูปแบบสัญลักษณ์หุ้นและค่าเปอร์เซ็นต์การเปลี่ยนแปลงราคาตามความจำเป็น
แหล่งที่มา
ขั้นตอนที่ 6: การสร้างฟิกเกอร์ matplotlib และกำหนดพล็อต
ในขั้นตอนนี้ เราจะสร้างแผนภาพ matplotlib ที่ว่างเปล่าและกำหนดขนาดของรูป นอกจากนี้ เราจะเพิ่มชื่อเรื่องของโครงเรื่อง กำหนดขนาดแบบอักษรของชื่อเรื่อง และแก้ไขระยะห่างจากโครงเรื่องโดยใช้วิธี set_position สุดท้าย เนื่องจากเราต้องการแสดงเฉพาะสัญลักษณ์หุ้นและการเปลี่ยนแปลงราคาร้อยละวันที่สอดคล้องกัน เราจะซ่อนเครื่องหมายสำหรับแกน X และ Y และลบแกนออกจากพล็อต
แหล่งที่มา
ขั้นตอนที่ 7: การสร้างแผนที่ความหนาแน่น
ในขั้นตอนสุดท้าย เราจะใช้ฟังก์ชันแผนที่ความหนาแน่นจากแพ็คเกจ Python ของ Seaborn เพื่อสร้างแผนที่ความหนาแน่น ฟังก์ชันแผนที่ความร้อนของแพ็คเกจ Seaborn Python ใช้ ชุดอาร์กิวเมนต์ต่อไปนี้:
ข้อมูล :
เป็นชุดข้อมูลสองมิติที่สามารถบังคับเป็นอาร์เรย์ได้ ด้วย Pandas DataFrame แถวและคอลัมน์จะถูกติดป้ายกำกับโดยใช้ข้อมูลดัชนี/คอลัมน์
หมายเหตุ :
เป็นอาร์เรย์ที่มีรูปร่างเหมือนกันกับข้อมูลและใส่คำอธิบายประกอบในแผนที่ความหนาแน่น
cmap:
เป็นวัตถุ matplotlib หรือชื่อแผนที่สีและจับคู่ค่าข้อมูลกับพื้นที่สี
เอฟเอ็ม :
เป็นโค้ดการจัดรูปแบบสตริงที่ใช้เมื่อเพิ่มคำอธิบายประกอบ
ความกว้างของเส้น:
กำหนดความกว้างของเส้นที่แบ่งแต่ละเซลล์
แหล่งที่มา
ผลลัพธ์สุดท้ายของแผนที่ความร้อนที่เกิดจากทะเลสำหรับบริษัทยาที่เลือกจะมีลักษณะดังนี้:
แหล่งที่มา
ก้าวไปข้างหน้า: เรียนรู้ Python ด้วยโปรแกรมใบรับรองระดับมืออาชีพของ upGrad ในด้านวิทยาศาสตร์ข้อมูล
หลักสูตร ประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลเพื่อการตัดสินใจทางธุรกิจ เป็นโปรแกรมออนไลน์ 8 เดือนที่เข้มงวด โดยเน้นที่แนวคิดด้านวิทยาศาสตร์ข้อมูลและการเรียนรู้ของเครื่อง โดยเน้นเฉพาะการใช้งานทางธุรกิจในโลกแห่งความเป็นจริง โปรแกรมนี้ได้รับการออกแบบอย่างมีหมวดหมู่สำหรับผู้จัดการและมืออาชีพด้านการทำงานที่ต้องการพัฒนาความรู้และทักษะเชิงปฏิบัติของวิทยาศาสตร์ข้อมูล ที่จะช่วยให้พวกเขาตัดสินใจทางธุรกิจเชิงกลยุทธ์และขับเคลื่อนด้วยข้อมูล
นี่คือไฮไลท์บางส่วนของหลักสูตร:
- การยอมรับอันทรงเกียรติจาก IIM Kozhikode
- เนื้อหามากกว่า 200 ชั่วโมง
- 3 โครงการอุตสาหกรรมและหลักสำคัญ
- 20+ เซสชั่นการเรียนรู้สด
- 5+ เซสชั่นการฝึกสอนโดยผู้เชี่ยวชาญ
- ความครอบคลุมของ Excel, Tableau, Python, R และ Power BI
- ตัวต่อตัวกับที่ปรึกษาในอุตสาหกรรม
- การสนับสนุนอาชีพ 360 องศา
- ความช่วยเหลือด้านงานกับบริษัทชั้นนำ
ลงทะเบียนกับ upGrad และฝึกฝนทักษะ Python heatmap ของคุณสำหรับทุกความต้องการในการสร้างภาพข้อมูลของคุณ!
บทสรุป
นักสถิติและนักวิเคราะห์ข้อมูลใช้เครื่องมือและเทคนิคมากมายในการจัดเรียงข้อมูลที่จัดเรียงและนำเสนอในลักษณะที่เข้าใจง่ายและเป็นมิตรกับผู้ใช้ ในแง่นี้ แผนที่ความหนาแน่นเป็นเทคนิคการสร้างภาพข้อมูลช่วยให้ธุรกิจในทุกภาคส่วนสามารถเห็นภาพและทำความเข้าใจข้อมูลได้ดีขึ้น
โดยสรุป แผนที่ความหนาแน่นมีการใช้กันอย่างแพร่หลายและยังคงใช้เป็นเครื่องมือทางสถิติและการวิเคราะห์ทางเลือกหนึ่ง เนื่องจากนำเสนอรูปแบบการนำเสนอข้อมูลที่ดึงดูดสายตาและเข้าถึงได้ เข้าใจได้ง่าย ใช้งานได้หลากหลาย ปรับเปลี่ยนได้ และขจัดขั้นตอนที่น่าเบื่อของกระบวนการวิเคราะห์และตีความข้อมูลแบบเดิมๆ ด้วยการนำเสนอค่าทั้งหมดในเฟรมเดียว
คุณจะพล็อตแผนที่ความร้อนได้อย่างไร?
แผนที่ความหนาแน่นเป็นวิธีมาตรฐานในการวางแผนข้อมูลที่จัดกลุ่มไว้ในรูปแบบกราฟิกสองมิติ แนวคิดพื้นฐานเบื้องหลังการวางแผนแผนที่ความหนาแน่นคือ กราฟแบ่งออกเป็นสี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยม โดยแต่ละอันจะเป็นตัวแทนของเซลล์หนึ่งเซลล์ในตารางข้อมูล ชุดข้อมูลหนึ่งชุด และหนึ่งแถว สี่เหลี่ยมจัตุรัสหรือสี่เหลี่ยมผืนผ้ามีรหัสสีตามค่าของเซลล์นั้นในตาราง
แผนที่ความหนาแน่นแสดงความสัมพันธ์หรือไม่?
แผนที่ความหนาแน่นสหสัมพันธ์คือการแสดงกราฟิกของเมทริกซ์สหสัมพันธ์ที่แสดงความสัมพันธ์ระหว่างตัวแปรต่างๆ แผนที่ความหนาแน่นสหสัมพันธ์จะมีประสิทธิภาพมาก หากใช้อย่างเหมาะสม เนื่องจากสามารถระบุตัวแปรที่มีความสัมพันธ์สูงได้อย่างง่ายดาย
เหตุใดจึงใช้ seaborn ใน Python
Seaborn เป็นไลบรารี Python โอเพ่นซอร์สที่ใช้ matplotlib มันถูกใช้สำหรับการวิเคราะห์ข้อมูลเชิงสำรวจและการแสดงภาพ และทำงานกับ data frames และไลบรารี Pandas ได้อย่างง่ายดาย นอกจากนี้ กราฟที่สร้างโดยใช้ Seaborn ยังปรับแต่งได้ง่ายอีกด้วย