用python将多个csv文件写入到一个excel文件的多个sheet中
时间: 2023-04-08 14:04:38 浏览: 93
可以使用 pandas 库来实现这个功能。具体步骤如下:
1. 导入 pandas 库
```python
import pandas as pd
```
2. 读取多个 csv 文件并合并成一个 DataFrame
```python
df1 = pd.read_csv('file1.csv')
df2 = pd.read_csv('file2.csv')
df3 = pd.read_csv('file3.csv')
df = pd.concat([df1, df2, df3])
```
3. 创建 ExcelWriter 对象并将 DataFrame 写入多个 sheet 中
```python
writer = pd.ExcelWriter('output.xlsx')
df.to_excel(writer, sheet_name='Sheet1')
df1.to_excel(writer, sheet_name='Sheet2')
df2.to_excel(writer, sheet_name='Sheet3')
df3.to_excel(writer, sheet_name='Sheet4')
writer.save()
```
这样就可以将多个 csv 文件写入到一个 excel 文件的多个 sheet 中了。
相关问题
python将多个csv文件第二列合并到一个sheet
可以使用 pandas 库来实现这个任务。以下是一种可能的方法:
```python
import pandas as pd
# 读取第一个 CSV 文件
df = pd.read_csv('file1.csv', usecols=[1])
# 循环读取并合并其他 CSV 文件的第二列
for i in range(2, num_files+1):
filename = f'file{i}.csv'
tmp_df = pd.read_csv(filename, usecols=[1])
df = pd.concat([df, tmp_df], axis=0)
# 将结果写入 Excel 文件的一个 sheet 中
with pd.ExcelWriter('output.xlsx') as writer:
df.to_excel(writer, sheet_name='merged')
```
其中,`usecols=[1]` 表示只读取 CSV 文件的第二列,`pd.concat([df, tmp_df], axis=0)` 表示将两个 DataFrame 沿着行方向合并。最终结果会被写入到一个名为 `merged` 的 sheet 中。你需要将 `num_files` 替换为实际的 CSV 文件数量。
python合并多个csv文件为一个excel表不同工作簿
您可以使用Python中的pandas库来合并多个CSV文件为一个Excel表不同工作簿。以下是一个示例代码,假设您已经安装了pandas库:
```python
import pandas as pd
# 定义要合并的CSV文件列表
csv_files = ["file1.csv", "file2.csv", "file3.csv"]
# 创建一个空的Excel文件
writer = pd.ExcelWriter("output.xlsx", engine="xlsxwriter")
# 遍历CSV文件列表,逐个读取并写入Excel文件中
for csv_file in csv_files:
# 读取CSV文件
df = pd.read_csv(csv_file)
# 获取文件名作为工作表名
sheet_name = csv_file.split(".")[0]
# 将数据写入Excel文件中的新工作表
df.to_excel(writer, sheet_name=sheet_name, index=False)
# 保存Excel文件
writer.save()
```
这段代码将多个CSV文件合并为一个Excel文件,并将每个CSV文件写入Excel文件中的新工作表中,工作表名与CSV文件名相同。您可以根据需要进行修改。