【问题标题】:How to combine different sheet of excel data into a single sheet but different columns?如何将不同的excel数据表组合成一个表但不同的列?
【发布时间】:2020-11-10 18:57:51
【问题描述】:

我在单个 excel 文件中有 125 张工作表(工作表名称 = 1、2、.....125)。必须将所有工作表组合到主工作表但具有不同的列。因此,主文件将带有 125 列。我已经写了代码,但它给出了一个错误。

import pandas as pd 
import numpy as np
import os, collections, csv
from os.path  import basename
df = r'C:\Users\Videos\excel\remain.xlsx'
numberOfSheets = 125 #Modify this.
for i in range(1,numberOfSheets+1):    
    data = pd.read_excel(df, sheet_name = str(i), header=None) 
    df.append(data)

final = r'C:\Users\Videos\excel\mergedfile3.xlsx'
df = pd.concat(df)
df.to_excel(final)

请帮我解决这个问题。谢谢!

【问题讨论】:

  • 错误是什么?

标签: excel pandas for-loop excel-formula concatenation


【解决方案1】:

像这样附加会产生一个单独的列,这可能是您的错误的来源。没有看到错误很难说。

我会这样:

声明一个系列列表而不是一个数据框

list_sheets = []

使用您的代码

numberOfSheets = 125 #Modify this.
for i in range(1,numberOfSheets+1):    
    data = pd.read_excel(df, sheet_name = str(i), header=None) 
    list_sheets.append(data)

然后使用列而不是行来连接

out_df= pd.concat(list_sheets,axis = 1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多