下面有一个表,我将使用panda/python根据站点ID进行分组并连接到一个新字段
<!DOCTYPE html>
<html>
<style>
table, th, td {
border:1px solid black;
}
</style>
<body>
<table style="width:100%">
<tr>
<th>SiteID</th>
<th>Name</th>
<th>Count</th>
</tr>
<tr>
<td>A</td>
<td>Conserve</td>
<td>3</td>
</tr>
<tr>
<td>A</td>
<td>Listed</td>
<td>5</td>
</tr>
<tr>
<td>B</td>
<td>Listed</td>
<td>5</td>
</tr>
</table>
</body>
</html>
我希望新表看起来像这样
<!DOCTYPE html>
<html>
<style>
table, th, td {
border:1px solid black;
}
</style>
<body>
<table style="width:100%">
<tr>
<th>SiteID</th>
<th>Output</th>
</tr>
<tr>
<td>A</td>
<td>There are Conserve : 3, Listed : 5 </td>
</tr>
<tr>
<td>B</td>
<td>There are Listed : 5</td>
</tr>
</table>
</body>
</html>
我不确定要用什么代码,我用过group by。我试过这个df = df.groupby("SiteID")["Name"].agg(";".join).reset_index()
但是我想把结果放在一个新的字段中,并使用上面的连接字符串
2条答案
按热度按时间c2e8gylq1#
您可以使用自定义
groupby.agg
:输出:
如果您需要领先的“有”:
von4xj4u2#
以下是实现此目的的方法:
第一个