Interprete colunas de zeros e uns como binários e armazene como uma coluna inteira

Eu tenho um quadro de dados de zeros e uns. Eu quero tratar cada coluna como se seus valores fossem uma representação binária de um número inteiro. Qual é a maneira mais fácil de fazer essa conversão?

Eu quero isso:

df = pd.DataFrame([[1, 0, 1], [1, 1, 0], [0, 1, 1], [0, 0, 1]])

print df

   0  1  2
0  1  0  1
1  1  1  0
2  0  1  1
3  0  0  1

convertido para:

0    12
1     6
2    11
dtype: int64

Tão eficientemente quanto possível.

questionAnswers(3)

yourAnswerToTheQuestion