python表连接,去除重复列
时间: 2023-10-20 11:04:37 浏览: 77
Python实现连接两个无规则列表后删除重复元素并升序排序的方法
5星 · 资源好评率100%
在Python中,可以使用pandas库来进行表连接和去除重复列。
表连接:
使用pandas的merge()函数来进行表连接,示例如下:
```python
import pandas as pd
# 创建两个数据表
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'], 'value': [1, 2, 3, 4]})
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'], 'value': [5, 6, 7, 8]})
# 进行表连接
merged_df = pd.merge(df1, df2, on='key', how='outer')
print(merged_df)
```
输出结果:
```
key value_x value_y
0 A 1.0 NaN
1 B 2.0 5.0
2 C 3.0 NaN
3 D 4.0 6.0
4 E NaN 7.0
5 F NaN 8.0
```
在这个示例中,我们创建了两个数据表df1和df2,它们都有一个名为key的列。我们使用merge()函数将这两个数据表连接在一起,并按照key列进行连接,使用outer连接方式(即保留所有行,对于缺失值用NaN填充)。
去除重复列:
在表连接之后,可能会出现重复的列,可以使用drop()函数来去除这些重复列,示例如下:
```python
# 去除重复列
merged_df = merged_df.loc[:,~merged_df.columns.duplicated()]
print(merged_df)
```
输出结果:
```
key value_x value_y
0 A 1.0 NaN
1 B 2.0 5.0
2 C 3.0 NaN
3 D 4.0 6.0
4 E NaN 7.0
5 F NaN 8.0
```
在这个示例中,我们使用loc[]函数和~merged_df.columns.duplicated()来去除重复列,即保留第一个出现的重复列。
阅读全文