Como criar uma tabela de contingência em python
Uma tabela de contingência é um tipo de tabela que resume o relacionamento entre duas variáveis categóricas.
Para criar uma tabela de contingência em Python, podemos usar a função pandas.crosstab() , que usa a seguinte sintaxe:
pandas.crosstab(índice, colunas)
Ouro:
- índice: nome da variável a ser exibida nas linhas da tabela de contingência
- colunas: nome da variável a ser exibida nas colunas da tabela de contingência
O exemplo passo a passo a seguir mostra como usar esta função para criar uma tabela de contingência em Python.
Etapa 1: crie os dados
Primeiro, vamos criar um conjunto de dados que exiba informações sobre 20 pedidos de produtos diferentes, incluindo o tipo de produto adquirido (TV, computador ou rádio), bem como o país (A, B ou C) em que o produto foi comprado:
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
Passo 2: Crie a tabela de contingência
O código a seguir mostra como criar uma tabela de contingência para contar a quantidade de cada produto pedido por cada país:
#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
Veja como interpretar a tabela:
- Um total de 1 computador foi adquirido no país A.
- Um total de 3 computadores foram adquiridos no país B.
- Um total de 2 computadores foram adquiridos no país C.
- Um total de 0 rádios foram adquiridos no país A.
- Um total de 2 rádios foram adquiridos no país B.
- Um total de 3 rádios foram adquiridos no país C.
- Um total de 3 televisores foram adquiridos no país A.
- Um total de 3 televisores foram adquiridos no país B.
- Um total de 3 televisores foram adquiridos no país C.
Passo 3: Adicionar totais de margem à tabela de contingência
Podemos usar o argumento margins=True para adicionar os totais de margem à tabela de contingência:
#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
A forma de interpretar os valores da tabela é a seguinte:
Totais de linha:
- Um total de 4 pedidos foram feitos do país A.
- Um total de 8 pedidos foram feitos do país B.
- Um total de 8 pedidos foram feitos do país C.
Totais da coluna:
- Foram adquiridos um total de 6 computadores.
- Foram adquiridos um total de 5 rádios.
- Foram adquiridos um total de 9 televisores.
O valor no canto inferior direito da tabela mostra que foram encomendados um total de 20 produtos de todos os países.
Recursos adicionais
Como criar uma tabela de contingência em R
Como criar uma tabela de contingência no Excel