Pandas在一个数据帧中对两行求和

2024-04-26 12:38:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个需要合并两行的数据帧。 例:

<table> <thead> <tr> <th>Col1</th> <th>Col2</th> <th>Col3</th> </tr> </thead> <tbody> <tr> <td>City1</td> <td>Pop1</td> <td>Area1</td> </tr> <tr> <td>City2</td> <td>Pop2</td> <td>Area2</td> </tr> <tr> <td>City1</td> <td>Pop3</td> <td>Area3</td> </tr> </tbody> </table>

我想把城市1合并成一行,我想把人口和面积相加 预期结果需要如下:

<table> <thead> <tr> <th>Col1</th> <th>Col2</th> <th>Col3</th> </tr> </thead> <tbody> <tr> <td>City1</td> <td>Pop(1+3)</td> <td>Area(1+3)</td> </tr> <tr> <td>City2</td> <td>Pop2</td> <td>Area2</td> </tr> </tbody> </table>

我尝试了不同的方法 df.groupby(['Col1']).aggregate({'Col2': "sum", 'Col3': "sum"})

这会合并行,但不会对值求和,而是将它们一个接一个地写入,如下所示:City1、Pop1Pop3、Area1Area3

我错过了什么