У меня есть pandas DataFrame df
, который выглядит следующим образом (пример):
df = pd.DataFrame({'Time' : ['Low','High','Medium','Low','Low','High','Low','High','Medium'],
'Sentiment' : ['Pos','Neg','Neg','Pos','Pos','Neg','Neg','Pos','Neg'],
'Product' : ['P1','P1','P1','P2','P1','P2','P2','P2','P1']})
У меня простой вопрос (который я искал до публикации), мне нужно создать crosstab
который может быть легко создан с помощью этой команды:
pd.crosstab(df['Time'],df['Sentiment'])
И дает желаемый результат:
Sentiment Neg Pos
Time
High 2 1
Low 1 3
Medium 2 0
Теперь в данных есть еще один столбец с именем Product
, который имеет около 50 уникальных категорий (для примера я включил 2), и мне нужно создать похожие crosstab
объекты для всех категорий, как я могу это сделать?
Мой ожидаемый результат показан ниже:
Crosstab
для Product1 (P1):
P1
Sentiment Neg Pos
Time
High 1 0
Low 0 2
Medium 2 0
Crosstab
для Product1 (P2):
P2
Sentiment Neg Pos
Time
High 1 1
Low 1 1
Medium 0 0
Как я могу получить 50 crosstab
в одном go?