2017-04-09 40 views
0

我想变更数据帧的列名:Python函数传递在变量将被用作名称内部功能

def test(var): 
    dic={'a': [5, 9], 
    'b': [4, 1], 
    'c': [2, 9]} 

    df=pd.DataFrame(dic).transpose() 
    df.columns=['aad',var_'k'] 
    return df 
test('lalala') 

我想第二列名作为var_'k';也就是说,如果我通过了lalala,那么列名应该是:lalala_k。但显然有语法问题。我该怎么办? Thx

回答

4

这只是一个普通的字符串;您可以使用串联或字符串函数进行构建。例如:

col = var + '_k' 

col = '{}_k'.format(var) 
+0

非常感谢!我忘了添加'+' – user815408

相关问题