|
发表于 2024-8-5 14:42:30
|
显示全部楼层
当然可以!如果你想要将一个 DataFrame 横向添加到另一个 DataFrame 中,可以在使用 `to_excel()` 方法时,通过调整参数实现。具体来说,你需要确定新的列位置,并将第二个 DataFrame 的起始列设置为第一个 DataFrame 的列数。
以下是如何在同一个 Excel 工作表中横向添加两个 DataFrame 的示例代码:
### 示例代码
- import pandas as pd
- # 创建两个示例 DataFrame
- data1 = {
- "序号": [1, 2, 3],
- "团队": ["A团队", "B团队", "C团队"],
- "衣服码": ["XL", "L", "M"],
- "鞋码": [40, 38, 42]
- }
- df1 = pd.DataFrame(data1)
- data2 = {
- "序号": [4, 5, 6],
- "团队": ["D团队", "E团队", "F团队"],
- "衣服码": ["L", "XL", "XXL"],
- "鞋码": [37, 39, 41]
- }
- df2 = pd.DataFrame(data2)
- # 使用 ExcelWriter 将两个 DataFrame 写入同一个 Excel 文件中的同一个 sheet
- with pd.ExcelWriter('output.xlsx', engine='xlsxwriter') as writer:
- df1.to_excel(writer, sheet_name='Sheet1', startrow=0, index=True) # 写入第一个 DataFrame
- df2.to_excel(writer, sheet_name='Sheet1', startcol=len(df1.columns) + 2, startrow=0, index=True) # 从 df1 右侧开始写入 df2,多留一列间隔
- print("数据已成功写入到同一个 Excel 工作表,且横向排列!")
复制代码
### 代码解释
1. **创建 DataFrame**:首先创建了两个示例 DataFrame `df1` 和 `df2`。
2. **使用 `ExcelWriter`**:
- 通过 `pd.ExcelWriter()` 创建一个新的 Excel 文件(命名为 `output.xlsx`)。
3. **写入第一个 DataFrame**:
- 用 `df1.to_excel()` 将第一个 DataFrame 写入 `Sheet1`,从第 0 行开始,且不写入索引(`index=True`)。
4. **横向写入第二个 DataFrame**:
- 使用 `startcol=len(df1.columns) + 2` 设置开始列,这样 `df2` 就会紧接在 `df1` 右侧写入,并多留一列间隔。
- 设置 `startrow=0` 使得 `df2` 从第一行开始写。
5. **结束写入**:写完后自动关闭 Excel 文件。
### 输出结果
运行上述代码后,你会在 `output.xlsx` 中看到两个 DataFrame 横向排列,每个 DataFrame 之间保留了一列的间隔。
如果你有其他问题或需要进一步的帮助,请随时告诉我!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|