Pandas: adding new column to existing Data Frame for grouping purposes
<p>I have a <code>pandas</code> Data Frame consisting of 2000 rows x 8 columns. I want to be able to group the first 4 columns together, as well as the other 4, but I can't figure out how. The purpose is to create a categorical bar plot, with colors assigned according to C1=C5, C2=C6, and so forth.</p>

<p>My Data Frame:</p>

<pre><code>In[1]: df.head(5)
Out[1]: 

    C1  C2  C3  C4  C5  C6  C7  C8
0   15  37  17  10  8   11  19  86
1   39  84  11  5   5   13  9   11
2   10  20  30  51  74  62  56  58
3   88  2   1   3   9   6   0   17
4   17  17  32  24  91  45  63  48
</code></pre>

<p>Do you suggest adding another column such as <code>df['Gr']</code> or what else?</p>

<p>use <code>pd.concat</code></p>

<pre><code>pd.concat([df.iloc[:, :4], df.iloc[:, 4:]], axis=1, keys=['first4', 'second4'])
</code></pre>

<p><a href="http://i.stack.imgur.com/8Fb5d.png" rel="nofollow"><img src="http://i.stack.imgur.com/8Fb5d.png" alt="enter image description here"></a></p>

python pandas dataframe grouping bar-chart