Dividir dict pelo valor de uma das chaves

Eu tenho um dicionário com dados do mesmo tamanho (mas tipos diferentes), algo como:

data = {
    "id": [1,1,2,2,1,2,1,2], 
    "info": ["info1","info2","info3","info4","info5","info6","info7","info8"],       
    "number": [1,2,3,4,5,6,7,8]
}

Agora eu gostaria de dividi-lo em dois porid, mantendo os respectivosinfo enumber. Ou seja, ter dois ditosdata1 edata2.

Nota: isso é meramente uma amostra, existem várias chaves no dict e eu gostaria de evitar o uso dos nomes das chaves, mas sim percorrer todos eles.

O que é uma maneira pitônica de fazer isso?

questionAnswers(4)

yourAnswerToTheQuestion