วิธีสร้างตารางฉุกเฉินใน python


ตารางฉุกเฉิน คือประเภทของตารางที่สรุปความสัมพันธ์ระหว่างตัวแปรประเภทสองตัว

ในการสร้างตารางฉุกเฉินใน Python เราสามารถใช้ฟังก์ชัน pandas.crosstab() ซึ่งใช้ไวยากรณ์ต่อไปนี้:

pandas.crosstab (ดัชนี คอลัมน์)

ทอง:

  • ดัชนี: ชื่อของตัวแปรที่จะแสดงในแถวของตารางฉุกเฉิน
  • columns: ชื่อของตัวแปรที่จะแสดงในคอลัมน์ของตารางฉุกเฉิน

ตัวอย่างทีละขั้นตอนต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้เพื่อสร้างตารางฉุกเฉินใน Python

ขั้นตอนที่ 1: สร้างข้อมูล

ขั้นแรก มาสร้างชุดข้อมูลที่แสดงข้อมูลเกี่ยวกับคำสั่งซื้อผลิตภัณฑ์ที่แตกต่างกัน 20 รายการ รวมถึงประเภทผลิตภัณฑ์ที่ซื้อ (ทีวี คอมพิวเตอร์ หรือวิทยุ) รวมถึงประเทศ (A, B หรือ C) ที่ซื้อผลิตภัณฑ์:

 import pandas as pd

#create data
df = pd. DataFrame ({'Order': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
                            11, 12, 13, 14, 15, 16, 17, 18, 19, 20],
                   'Product': ['TV', 'TV', 'Comp', 'TV', 'TV', 'Comp',
                               'Comp', 'Comp', 'TV', 'Radio', 'TV', 'Radio', 'Radio',
                               'Radio', 'Comp', 'Comp', 'TV', 'TV', 'Radio', 'TV'],
                   'Country': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'B', 'B',
                               'B', 'C', 'C', 'C', 'C', 'C', 'C', 'C', 'C']})

#view data
df

        Order Product Country
0 1 TV A
1 2 TV A
2 3 Comp A
3 4 TV A
4 5 TV B
5 6 Comp B
6 7 Comp B
7 8 Comp B
8 9 TV B
9 10 Radio B
10 11 TV B
11 12 Radio B
12 13 Radio C
13 14 Radio C
14 15 Comp C
15 16 Comp C
16 17 TV C
17 18 TV C
18 19 Radio C
19 20 TV C

ขั้นตอนที่ 2: สร้างตารางฉุกเฉิน

รหัสต่อไปนี้แสดงวิธีการสร้างตารางฉุกเฉินเพื่อนับจำนวนผลิตภัณฑ์แต่ละรายการที่เรียงลำดับตามแต่ละประเทศ:

 #create contingency table
p.d. crosstab (index=df[' Country '], columns=df[' Product '])

Product Comp Radio TV
Country			
A 1 0 3
B 3 2 3
C 2 3 3

ต่อไปนี้เป็นวิธีการตีความตาราง:

  • ซื้อคอมพิวเตอร์ทั้งหมด 1 เครื่องในประเทศ A
  • มีการซื้อคอมพิวเตอร์ทั้งหมด 3 เครื่องในประเทศ B
  • มีการซื้อคอมพิวเตอร์ทั้งหมด 2 เครื่องในประเทศ C
  • มีการซื้อวิทยุทั้งหมด 0 รายการในประเทศ A
  • มีการซื้อวิทยุทั้งหมด 2 เครื่องในประเทศ B
  • มีการซื้อวิทยุทั้งหมด 3 เครื่องในประเทศ C
  • ซื้อโทรทัศน์ทั้งหมด 3 เครื่องในประเทศ A
  • ซื้อโทรทัศน์ทั้งหมด 3 เครื่องในประเทศ B
  • ซื้อโทรทัศน์ทั้งหมด 3 เครื่องในประเทศ C

ขั้นตอนที่ 3: เพิ่มผลรวมมาร์จิ้นลงในตารางฉุกเฉิน

เราสามารถใช้อาร์กิวเมนต์ Margins=True เพื่อเพิ่มผลรวมของ Margin ลงในตารางฉุกเฉินได้:

 #add margins to contingency table
p.d. crosstab (index=df[' Country '], columns=df[' Product '], margins= True )

Product Comp Radio TV All
Country				
A 1 0 3 4
B 3 2 3 8
C 2 3 3 8
All 6 5 9 20

วิธีการตีความค่าตารางมีดังนี้:

ผลรวมบรรทัด:

  • มีการสั่งซื้อทั้งหมด 4 รายการจากประเทศ A
  • มีการสั่งซื้อทั้งหมด 8 รายการจากประเทศ B
  • มีการสั่งซื้อทั้งหมด 8 รายการจากประเทศ C

ผลรวมคอลัมน์:

  • จัดซื้อคอมพิวเตอร์ จำนวน 6 เครื่อง
  • จัดซื้อวิทยุ จำนวน 5 เครื่อง
  • ซื้อโทรทัศน์จำนวน 9 เครื่อง

ค่าที่มุมขวาล่างของตารางแสดงว่ามีการสั่งซื้อผลิตภัณฑ์ทั้งหมด 20 รายการจากทุกประเทศ

แหล่งข้อมูลเพิ่มเติม

วิธีสร้างตารางฉุกเฉินใน R
วิธีสร้างตารางฉุกเฉินใน Excel

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *