Eu tentei extrapolar o exercício proposto e fazer aparecer os dados dos homens em um array. Não consegui fazer sem usar a transposição. Alguém poderia propor uma solução sem o método .T? Minha solução foi transpor e depois transpor de novo.
(dados.T[:,dados.T[2]=='masculino']).T
array([['Roberto', 'casado', 'masculino'], ['Bruno', 'solteiro', 'masculino']], dtype='<U9')