title: SQL query in pandas: Concat multiple rows in column based on a combination of other columns
body: <p>This is response from one sql query in pandas. I want to concatenate, &quot;Label column&quot;, together based on Issue and client.
  I tried Group By, but is only works with integer values.
  Any idea, how I can do this?
  Pandas based solution should also be fine.</p>
  <p>I tried <code>.groupby</code>, in pandas too, command and output below, it only gives me a subset of needed dataframe.</p>
  <p>Is it possible to update the <code>label</code> column against each <code>Issue</code> in first dataframe and removed duplicates and get output as expected below?</p>
  <p>SQL Version is:</p>
  <pre><code>Microsoft SQL Server 2014
  </code></pre>
  <p>Output:</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th style="text-align: right;"></th>
  <th style="text-align: right;">Issue</th>
  <th style="text-align: left;">Subject</th>
  <th style="text-align: left;">type</th>
  <th style="text-align: left;">Team</th>
  <th style="text-align: left;">Sub Team</th>
  <th style="text-align: left;">Client</th>
  <th style="text-align: right;">Priority</th>
  <th style="text-align: left;">CreatedOn</th>
  <th style="text-align: left;">Label</th>
  <th style="text-align: left;">BuiltOn</th>
  <th style="text-align: left;">CreatedBy</th>
  <th style="text-align: left;">Status</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td style="text-align: right;">0</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">ABCABC</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Andy</td>
  <td style="text-align: right;">0</td>
  <td style="text-align: left;">2021-01-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">John</td>
  <td style="text-align: left;">InProgress</td>
  </tr>
  <tr>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">DEFDEF</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Judy</td>
  <td style="text-align: right;">0</td>
  <td style="text-align: left;">2021-01-10 00:00:00</td>
  <td style="text-align: left;">Feature</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Andre</td>
  <td style="text-align: left;">New</td>
  </tr>
  <tr>
  <td style="text-align: right;">2</td>
  <td style="text-align: right;">3</td>
  <td style="text-align: left;">HIGHIG</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Testing123</td>
  <td style="text-align: left;">Cathy</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">2021-02-11 00:00:00</td>
  <td style="text-align: left;">Feature</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Keith</td>
  <td style="text-align: left;">New</td>
  </tr>
  <tr>
  <td style="text-align: right;">3</td>
  <td style="text-align: right;">3</td>
  <td style="text-align: left;">HIGHIG</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Testing123</td>
  <td style="text-align: left;">Cathy</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">2021-02-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Keith</td>
  <td style="text-align: left;">New</td>
  </tr>
  <tr>
  <td style="text-align: right;">4</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Jack</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">5</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Jack</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">6</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Larry</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">7</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Larry</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">8</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Colin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">9</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Colin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">10</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Nitin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">11</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Nitin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">12</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Lisa</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">13</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZXYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Lisa</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>Expected (Note the label column):</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th style="text-align: right;"></th>
  <th style="text-align: right;">Issue</th>
  <th style="text-align: left;">Subject</th>
  <th style="text-align: left;">Issue_type</th>
  <th style="text-align: left;">Team</th>
  <th style="text-align: left;">Sub Team</th>
  <th style="text-align: left;">Client</th>
  <th style="text-align: right;">Priority</th>
  <th style="text-align: left;">CreatedOn</th>
  <th style="text-align: left;">Label</th>
  <th style="text-align: left;">BuiltOn</th>
  <th style="text-align: left;">CreatedBy</th>
  <th style="text-align: left;">Status</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td style="text-align: right;">0</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">ABC</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Andy</td>
  <td style="text-align: right;">0</td>
  <td style="text-align: left;">2021-01-11 00:00:00</td>
  <td style="text-align: left;">Enhancement</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">John</td>
  <td style="text-align: left;">InProgress</td>
  </tr>
  <tr>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">DEF</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Judy</td>
  <td style="text-align: right;">0</td>
  <td style="text-align: left;">2021-01-10 00:00:00</td>
  <td style="text-align: left;">Feature</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Andre</td>
  <td style="text-align: left;">New</td>
  </tr>
  <tr>
  <td style="text-align: right;">2</td>
  <td style="text-align: right;">3</td>
  <td style="text-align: left;">HIG</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Testing</td>
  <td style="text-align: left;">Cathy</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">2021-02-11 00:00:00</td>
  <td style="text-align: left;">Feature, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Keith</td>
  <td style="text-align: left;">New</td>
  </tr>
  <tr>
  <td style="text-align: right;">3</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Jack</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">4</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Larry</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">5</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Colin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">6</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Nitin</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  <tr>
  <td style="text-align: right;">7</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">XYZ</td>
  <td style="text-align: left;">Bug</td>
  <td style="text-align: left;">Develop</td>
  <td style="text-align: left;">Automation</td>
  <td style="text-align: left;">Lisa</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">2021-05-11 00:00:00</td>
  <td style="text-align: left;">Enhancement, Internal</td>
  <td style="text-align: left;">None</td>
  <td style="text-align: left;">Maya</td>
  <td style="text-align: left;">Analysis</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p><strong>Update:</strong>
  This is they query:</p>
  <pre><code>SELECT I.Issue,
         I.Subject,
         I.type, 
         P.Team, 
         P.Subteam,
         CR.Client,
         I.Priority,
         I.CreatedOn,
         L.Label,
         I.BuiltOn,
         I.CreatedBy,
         I.Status
   FROM master.IssueRequests AS I 
   JOIN master.Participants AS P 
     ON P.Issue = I.Issue 
   JOIN master.ClientRecords AS CR 
     ON CR.Issue = I.Issue 
   JOIN master.IssueLabels AS L
     ON L.Issue = I.Issue
   WHERE I.Issue IN ('2652523', '2703670', '2984120')
  </code></pre>
  <p><strong>Update2</strong>
  Output of <code>df.groupby</code>:</p>
  <pre><code>df.groupby(['Issue', 'Client'])['Label'].apply(','.join).reset_index()
  </code></pre>
  <p>Output:</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th style="text-align: right;"></th>
  <th style="text-align: right;">Issue</th>
  <th style="text-align: left;">Client</th>
  <th style="text-align: left;">Label</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td style="text-align: right;">0</td>
  <td style="text-align: right;">1</td>
  <td style="text-align: left;">Andy</td>
  <td style="text-align: left;">Enhancement</td>
  </tr>
  <tr>
  <td style="text-align: right;">1</td>
  <td style="text-align: right;">2</td>
  <td style="text-align: left;">Judy</td>
  <td style="text-align: left;">Feature</td>
  </tr>
  <tr>
  <td style="text-align: right;">2</td>
  <td style="text-align: right;">3</td>
  <td style="text-align: left;">Cathy</td>
  <td style="text-align: left;">Feature,Internal</td>
  </tr>
  <tr>
  <td style="text-align: right;">3</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">Colin</td>
  <td style="text-align: left;">Enhancement,Internal</td>
  </tr>
  <tr>
  <td style="text-align: right;">4</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">Jack</td>
  <td style="text-align: left;">Enhancement,Internal</td>
  </tr>
  <tr>
  <td style="text-align: right;">5</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">Larry</td>
  <td style="text-align: left;">Enhancement,Internal</td>
  </tr>
  <tr>
  <td style="text-align: right;">6</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">Lisa</td>
  <td style="text-align: left;">Enhancement,Internal</td>
  </tr>
  <tr>
  <td style="text-align: right;">7</td>
  <td style="text-align: right;">4</td>
  <td style="text-align: left;">Nitin</td>
  <td style="text-align: left;">Enhancement,Internal</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>Clarification: Merging on all columns except <code>Label</code> will not work since in some cases, some of the other data might be &quot;null&quot; or different, which can cause data to be missed altogether. If the data is different in other columns, I can keep the first instance of that data.</p>