两个df 按列拼接,中间一列空白间隔
时间: 2024-09-25 09:16:13 浏览: 15
在Pandas库中,如果你想将两个DataFrame按照某列进行拼接,但是中间想要插入一个空白间隔,可以使用`concat`函数结合`join`参数以及`fillna`方法。假设你有两个DataFrame `df1` 和 `df2`,并且你想按它们共享的一列`column_name`拼接,中间有空行,可以这样做:
```python
# 先确定需要拼接的列名
common_column = 'column_name'
# 使用 concat 函数并指定 join 参数为 inner,保留共同的 column
merged_df = pd.concat([df1, df2], axis=0, join='inner', sort=False)
# 如果 common_column 存在,并且其中一个数据框中有值而另一个为空,则填充空值
merged_df[common_column] = merged_df.groupby(common_column)[common_column].transform(lambda x: x.fillna(''))
# 或者简单地添加一个全空的 Series 到第二个 DataFrame 的这一列
if len(df2) > 0 and common_column in df2.columns:
df2[common_column] = ''
# 现在合并后的 DataFrame 中,common_column 列会有空白间隔
```
阅读全文