data = {'category':['foo','foo','foo','foo','foo','bar','bar','bar','bar','bar'],'part':['101','102','103','104','105','201','202','203','204','205'],'site_a':['yes','yes','no','no','no','no','yes','no','no','no'],'site_b':['no','no','no','no','no','no','yes','no','no','no'],'site_c':['yes','no','no','no','no','no','no','no','no','no']}
Мне нужно сгруппировать по категориям и отфильтровать, на каком сайте нет значений для каждого значения категории. «site_b» будет верным для категории «foo», а «site_c» будет верным для категории «бар». Думаю, если бы я преобразовал «да» в 1, а «нет» в 0, то я мог бы выполнить какую-то функцию агрегирования, если бы использовал groupby. Я также читал о мультииндексировании, но не знал, как перебирать категории, чтобы определить, какие сайты имеют все значения «нет».
Вот как выглядел мой мультииндекс
site_a site_b site_c
category part
foo 101 yes no yes
102 yes no no
103 no no no
104 no no no
105 no no no
bar 201 no no no
202 yes yes no
203 no no no
204 no no no
205 no no no
Таким образом, если сайт не использует часть категории, я удалю эту категорию из списка категорий/частей каждого сайта.
большое спасибо за рекомендации по использованию groupby или multiindex
У меня есть набор данных, похожий на этот вымышленный [code]data = {'category':['foo','foo','foo','foo','foo','bar','bar','bar','bar','bar'],'part':['101','102','103','104','105','201','202','203','204','205'],'site_a':['yes','yes','no','no','no','no','yes','no','no','no'],'site_b':['no','no','no','no','no','no','yes','no','no','no'],'site_c':['yes','no','no','no','no','no','no','no','no','no']} [/code] Мне нужно сгруппировать по категориям и отфильтровать, на каком сайте нет значений для каждого значения категории. «site_b» будет верным для категории «foo», а «site_c» будет верным для категории «бар». Думаю, если бы я преобразовал «да» в 1, а «нет» в 0, то я мог бы выполнить какую-то функцию агрегирования, если бы использовал groupby. Я также читал о мультииндексировании, но не знал, как перебирать категории, чтобы определить, какие сайты имеют все значения «нет». Вот как выглядел мой мультииндекс [code]df.set_index(['category','part'], inplace=True) [/code] [code] site_a site_b site_c category part foo 101 yes no yes 102 yes no no 103 no no no 104 no no no 105 no no no bar 201 no no no 202 yes yes no 203 no no no 204 no no no 205 no no no [/code] Таким образом, если сайт не использует часть категории, я удалю эту категорию из списка категорий/частей каждого сайта. большое спасибо за рекомендации по использованию groupby или multiindex