How to concatenate multiple column values into a single column in Panda dataframe
<p>This question is same to <a href="http://stackoverflow.com/questions/11858472/pandas-combine-string-and-int-columns">this posted</a> earlier. I want to concatenate three columns instead of concatenating two columns:</p>

<p>Here is the combining two columns:</p>

<pre><code>df = DataFrame({'foo':['a','b','c'], 'bar':[1, 2, 3], 'new':['apple', 'banana', 'pear']})

df['combined']=df.apply(lambda x:'%s_%s' % (x['foo'],x['bar']),axis=1)

df
    bar foo new combined
0   1   a   apple   a_1
1   2   b   banana  b_2
2   3   c   pear    c_3
</code></pre>

<p>I want to combine three columns with this command but it is not working, any idea?</p>

<pre><code>df['combined']=df.apply(lambda x:'%s_%s' % (x['bar'],x['foo'],x['new']),axis=1)
</code></pre>

<p>you can simply do:</p>

<pre><code>In[17]:df['combined']=df['bar'].astype(str)+'_'+df['foo']+'_'+df['new']

In[17]:df
Out[18]: 
   bar foo     new    combined
0    1   a   apple   1_a_apple
1    2   b  banana  2_b_banana
2    3   c    pear    3_c_pear
</code></pre>

python pandas dataframe