python将相同数据的行合并
时间: 2023-08-20 08:05:55 浏览: 68
可以使用 Pandas 库来实现将相同数据的行合并。假设有如下数据:
```
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Alice', 'Charlie', 'Alice'],
'Age': [25, 30, 25, 35, 25],
'City': ['New York', 'Los Angeles', 'New York', 'San Francisco', 'New York']}
df = pd.DataFrame(data)
print(df)
```
输出:
```
Name Age City
0 Alice 25 New York
1 Bob 30 Los Angeles
2 Alice 25 New York
3 Charlie 35 San Francisco
4 Alice 25 New York
```
现在要将 `Name` 和 `Age` 相同的行合并,可以使用 `groupby()` 和 `agg()` 方法:
```
df_grouped = df.groupby(['Name', 'Age']).agg({'City': ', '.join}).reset_index()
print(df_grouped)
```
输出:
```
Name Age City
0 Alice 25 New York, New York, New York
1 Bob 30 Los Angeles
2 Charlie 35 San Francisco
```
其中,`groupby(['Name', 'Age'])` 将数据按照 `Name` 和 `Age` 分组,然后 `agg()` 方法对每个组进行聚合操作,`{'City': ', '.join}` 表示将 `City` 列中的数据用逗号连接起来,最后使用 `reset_index()` 方法将结果重新设置索引。