from pandas import *
df = DataFrame([[0, 1, 1], [1, 1, 0], [1, 0, 1]], columns=['a', 'b', 'c'])
foo = []
for i in df.index:
    foo.append(df.columns[df.ix[i] == 1])
DataFrame(foo, index=df.index)
pandas dataframe - изменить значения на основе заголовка столбца