У меня есть df с необработанными данными опроса, похожими на приведенные ниже, с 12000 строками и сорока вопросами. Все ответы категорически
import pandas as pd
df = pd.DataFrame({'Age' : ['20-30','20-30','30-45', '20-30','30-45','20-30'],
'Gender' : ['M', 'F', 'F','F','M','F'],
'Income' : ['20-30k', '30-40k', '40k+', '40k+', '40k+', '20-30k'],
'Question1' : ['Good','Bad','OK','OK','Bad','Bad'],
'Question2' : ['Happy','Unhappy','Very_Unhappy','Very_Unhappy','Very_Unhappy','Happy']})
Я хочу классифицировать ответы на каждый вопрос в соответствии с возрастом, полом и доходом, чтобы получить таблицу частот (в%) для каждого вопроса, который выглядит следующим образом: снимок экрана с вопросами .

Кросс-таблица производит слишком много категорий, то есть она разбита по доходам и по доходам, по возрасту и т. Д. Поэтому я не уверен, как лучше это сделать. Я уверен, что это простая проблема, но я новичок в Python, любая помощь будет оценена