Как создать таблицу непредвиденных обстоятельств в Python


Таблица непредвиденных обстоятельств — это тип таблицы, которая обобщает отношения между двумя категориальными переменными.

Чтобы создать таблицу непредвиденных обстоятельств в Python, мы можем использовать функцию pandas.crosstab() , которая использует следующий синтаксис:

pandas.crosstab (индекс, столбцы)

куда:

  • индекс: имя переменной для отображения в строках таблицы непредвиденных обстоятельств
  • столбцы: имя переменной для отображения в столбцах таблицы непредвиденных обстоятельств

В следующем пошаговом примере показано, как использовать эту функцию для создания таблицы непредвиденных обстоятельств в 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
pd.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 компьютер.
  • Всего в стране Б было закуплено 3 компьютера.
  • Всего в стране C было закуплено 2 компьютера.
  • Всего в стране А было закуплено 0 радиостанций.
  • Всего в стране B было закуплено 2 радиоприемника.
  • Всего в стране С было закуплено 3 радиоприемника.
  • Всего в стране А было приобретено 3 телевизора.
  • Всего в стране Б было приобретено 3 телевизора.
  • Всего было приобретено 3 телевизора в стране C.

Шаг 3. Добавьте итоговые значения маржи в таблицу непредвиденных обстоятельств.

Мы можем использовать аргумент margins=True , чтобы добавить итоговые значения маржи в таблицу непредвиденных обстоятельств:

#add margins to contingency table
pd.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 заказа из страны А.
  • Всего было сделано 8 заказов из страны B.
  • Всего было сделано 8 заказов из страны C.

Итоги столбца:

  • Всего было куплено 6 компьютеров.
  • Всего было куплено 5 радиостанций.
  • Всего было куплено 9 телевизоров.

Значение в правом нижнем углу таблицы показывает, что всего было заказано 20 товаров из всех стран.

Дополнительные ресурсы

Как создать таблицу непредвиденных обстоятельств в R
Как создать таблицу непредвиденных обстоятельств в Excel

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.