So erstellen sie eine kontingenztabelle in python


Eine Kontingenztabelle ist eine Art Tabelle, die die Beziehung zwischen zwei kategorialen Variablen zusammenfasst.

Um eine Kontingenztabelle in Python zu erstellen, können wir die Funktion pandas.crossstab() verwenden, die die folgende Syntax verwendet:

pandas.crossstab(index, columns)

Gold:

  • Index: Name der Variablen, die in den Zeilen der Kontingenztabelle angezeigt werden soll
  • Spalten: Name der Variablen, die in den Spalten der Kontingenztabelle angezeigt werden soll

Das folgende Schritt-für-Schritt-Beispiel zeigt, wie Sie mit dieser Funktion eine Kontingenztabelle in Python erstellen.

Schritt 1: Erstellen Sie die Daten

Erstellen wir zunächst einen Datensatz, der Informationen zu 20 verschiedenen Produktbestellungen anzeigt, einschließlich der Art des gekauften Produkts (Fernseher, Computer oder Radio) sowie des Landes (A, B oder C), in dem das Produkt gekauft wurde:

 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

Schritt 2: Erstellen Sie die Kontingenztabelle

Der folgende Code zeigt, wie Sie eine Kontingenztabelle erstellen, um die Anzahl der von jedem Land bestellten Produkte zu zählen:

 #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

So interpretieren Sie die Tabelle:

  • Insgesamt wurde 1 Computer in Land A gekauft.
  • Insgesamt wurden 3 Computer in Land B gekauft.
  • Insgesamt wurden 2 Computer im Land C gekauft.
  • Im Land A wurden insgesamt 0 Radios gekauft.
  • Im Land B wurden insgesamt 2 Radios angeschafft.
  • Insgesamt wurden 3 Radios im Land C gekauft.
  • Insgesamt wurden in Land A 3 Fernseher gekauft.
  • Im Land B wurden insgesamt 3 Fernseher angeschafft.
  • Insgesamt wurden 3 Fernseher im Land C gekauft.

Schritt 3: Margin-Gesamtsummen zur Kontingenztabelle hinzufügen

Wir können das Argument „margins=True“ verwenden, um die Margensummen zur Kontingenztabelle hinzuzufügen:

 #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

Die Interpretation der Tabellenwerte ist wie folgt:

Zeilensummen:

  • Insgesamt wurden 4 Bestellungen aus Land A aufgegeben.
  • Aus Land B wurden insgesamt 8 Bestellungen aufgegeben.
  • Aus Land C wurden insgesamt 8 Bestellungen aufgegeben.

Spaltensummen:

  • Insgesamt wurden 6 Computer gekauft.
  • Insgesamt wurden 5 Radios gekauft.
  • Insgesamt wurden 9 Fernseher gekauft.

Der Wert in der unteren rechten Ecke der Tabelle zeigt, dass insgesamt 20 Produkte aus allen Ländern bestellt wurden.

Zusätzliche Ressourcen

So erstellen Sie eine Kontingenztabelle in R
So erstellen Sie eine Kontingenztabelle in Excel

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert