拼接两个dataframe,合并相同的列
时间: 2023-09-09 11:11:58 浏览: 123
可以使用`pd.concat()`函数将两个dataframe拼接在一起。如果两个dataframe存在相同的列,可以使用`merge()`函数将它们合并。
示例代码如下:
```python
import pandas as pd
# 创建两个dataframe
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [1, 2, 4], 'C': [7, 8, 9]})
# 拼接两个dataframe
df = pd.concat([df1, df2], sort=False)
# 合并相同的列
df = df.merge(df.groupby(['A']).first(), on='A', suffixes=('', '_y'))
# 删除重复的列
df = df[df.columns.drop(list(df.filter(regex='_y')))]
print(df)
```
输出结果:
```
A B C
0 1 4 7
1 2 5 8
2 3 6 NaN
3 4 NaN 9
```
相关问题
拼接两个dataframe
可以使用 pandas 库中的 concat 函数来拼接两个 dataframe,例如:
```
import pandas as pd
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': ['a', 'b', 'c']})
df2 = pd.DataFrame({'A': [4, 5, 6], 'B': ['d', 'e', 'f']})
concatenated_df = pd.concat([df1, df2], axis=0)
print(concatenated_df)
```
这个程序会输出合并后的 dataframe:
```
A B
0 1 a
1 2 b
2 3 c
0 4 d
1 5 e
2 6 f
```
两个dataframe合并
在Python的数据分析库Pandas中,合并两个DataFrame通常有几种方法:
1. **`pd.merge()`**:这是最常用的方法,用于基于列上的键(通常是索引或共享的列)对数据框进行内连接(默认)、外连接、左连接或右连接。
```python
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'],
'value': np.random.randn(4)})
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'],
'value': np.random.randn(4)})
merged_df = pd.merge(df1, df2, on='key') # 默认内连接
```
2. **`concat()`**:如果想要沿着行方向拼接,可以使用`concat`函数,它可以水平(axis=0)或垂直(axis=1)地拼接。
```python
df3 = pd.DataFrame({'key': ['A', 'A', 'B', 'B'],
'value2': np.random.randn(4)})
concatenated_df = pd.concat([df1, df3], axis=0) # 水平拼接
```
3. **`append()`**:这是直接追加DataFrame到另一个DataFrame底部的方法,适用于添加一行或多行数据。
```python
df1.append(df3)
```
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)