例如我们做透视表时,表头可能是多层的,得到了multiindex的列,我们需要将这些列拉平成一层,如下:
table_cnt = pd.pivot_table(danbao_jigou_erji, values='creditlimitamount', index=['reportno'], columns=['type','finance_type','loantype_group'], aggfunc = {'creditlimitamount' : 'count'}, fill_value = 0)
得到的列名如下:
MultiIndex([( '个人消费贷款', '商业/外资银行', '消费_信用型'),
( '个人消费贷款', '商业/外资银行', '消费_大额担保')]names=['type', 'finance_type', 'loantype_group'])
我们需要得到'个人消费贷款_商业/外资银行_消费_信用型',或者是'个人消费贷款_商业/外资银行_消费_信用型_cnt',则
[('_'.join(col)) for col in table_cnt.columns.values] ''' ['个人消费贷款_商业/外资银行_消费_信用型', '个人消费贷款_商业/外资银行_消费_大额担保'] ''' [('_'.join(col))+'_cnt' for col in table_cnt.columns.values] ''' ['个人消费贷款_商业/外资银行_消费_信用型_cnt', '个人消费贷款_商业/外资银行_消费_大额担保_cnt'] '''