python将多个excel按照指定列合并
时间: 2023-09-22 21:03:24 浏览: 115
要将多个Excel按照指定列合并,可以使用Python的pandas库来实现。
首先,需要导入pandas库:
```python
import pandas as pd
```
然后,需要使用pandas的read_excel函数来读取每个Excel文件,并将它们保存为DataFrame对象:
```python
df1 = pd.read_excel('excel1.xlsx')
df2 = pd.read_excel('excel2.xlsx')
df3 = pd.read_excel('excel3.xlsx')
```
接下来,需要使用pandas的concat函数来合并这些DataFrame对象。假设我们要按照"列名"这一列来合并,可以使用如下代码:
```python
merged_df = pd.concat([df1, df2, df3], ignore_index=True)
```
在上述代码中,使用concat函数将df1、df2和df3按行连接起来,并使用ignore_index=True参数重新索引合并后的DataFrame。
如果要进行按照指定列合并,请使用merge函数。首先需要给每个DataFrame对象添加一个标志列,表示它们来自于哪个Excel文件:
```python
df1['Excel'] = 'excel1'
df2['Excel'] = 'excel2'
df3['Excel'] = 'excel3'
```
然后,使用merge函数按照指定的列名"Excel"来合并DataFrame对象:
```python
merged_df = pd.merge(df1, df2, on='Excel')
merged_df = pd.merge(merged_df, df3, on='Excel')
```
上述代码将df1、df2和df3按照"Excel"这一列进行合并,生成一个合并后的DataFrame merged_df。
最后,可以将合并后的DataFrame保存为一个新的Excel文件:
```python
merged_df.to_excel('merged.xlsx',index=False)
```
上述代码将merged_df保存为"merged.xlsx"文件,其中的index=False表示不保存索引。