【问题标题】:python dataframe auto-generate excel sheetpython数据框自动生成excel表
【发布时间】:2020-05-21 17:48:52
【问题描述】:

我有一个完全重复的海量数据集,我认为自动化任务的最佳方法是使用 python。这适用于仅使用 2 种类型电机的工程项目,即从动电机或领导电机。

对于 Follower,它将具有完全类似的结构(其中 IFDXXXX 将是单个驱动器号):

对于领导者,它的结构与此完全相同(其中 IFDXXXX 将是单个驱动器号):

我的想法是,我将导入具有以下格式的 excel 工作表,并将其存储为带有 pandas 的数据框,以便稍后进行自动生成:

最简单的方法是什么,或者还有其他更简单的方法吗?如果可能的话,我想坚持使用 python,因为我试图用这种语言扩展我的知识。

编辑:

最终的最终目标是最终得到一张看起来像这样的表格:

更新1:

【问题讨论】:

    标签: python excel loops dataframe


    【解决方案1】:

    假设您有一个想要保存的表格,其中包含标题 drive_idrole 并将它们保存在数据框 df1 要遍历您的行并创建一个新表,我更喜欢使用 dicts 列表来完成它

    out_table = []
    for index, row in df1.iterrows()
        drive_id = row["drive id"]
        if row["role"]=="follower":
            out_row ={}
            out_row["drive_id"]= drive_id
            out_row["task name"] = "rotate rev"
            out_row["description"] = "check rotate hmi"
            out_row["comment"] = "NA"
            out_table.append(out_row)
    #this is the end of the first row, so on you add all the rows for this role
            out_row ={}
            out_row["drive_id"] =  driver_id
            out_row["task name"] = "rotate fwd"
            out_row["description"] = "check hdmi for footlock"
            out_row["comment"] = ""
            out_table.append(out_row)
        if row["role"] == "FOLLOWER"
    # here you add all the rows for this role
    
    
    df2 = pd.DataFrame(out_table)  # this makes a dataframe where the dict keys are the table headers
    df2.to_excel(r"D:\drive_table.xlsx")
    

    【讨论】:

    • 您的意思是要导入的表格看起来像这样:为清楚起见更新了原始帖子
    • 是的,你可以从中生成一个新表,就像我说的那样,我用一个字典列表来做,然后从中创建一个数据框并将其导出到 excel
    【解决方案2】:
    import pandas as pd
    
    df1=pd.read_excel('insert file path here',sheet_name = 0)
    

    这允许 pandas 将 excel 工作表存储为数据框。

    如果您想推送在您的代码之后生成的数据帧,您可以使用

    df.to_excel(x)
    

    【讨论】:

    • 这很完美,但是我如何格式化输出以使用上面列出的结构(跟随者或领导者)?
    • 你能详细说明哪些参数表示领导者和追随者
    • 当然。我的想法是,我要导入一个带有上面第三个图形([IFD#,TYPE])列出的类型的熊猫表,然后将其存储为数据框。然后我想输出上面的第一个或第二个图形,这取决于 IFD 是领导者还是跟随者类型。这将发生在导入工作表中的每一行。更新了原始帖子以显示我试图实现的输出
    • 你是否可以用你的意思的例子来更新你的答案?你不必做所有事情,就像我会如何格式化一个 LEADER 驱动器,然后将数据框连接到最终的最终 excel 表中。
    • 不。每个 IFD 都是独一无二的,可以是跟随者或领导者。作为一个小背景故事,这是来自 CAD 工程图,其中列出了每个驱动器是什么。有数百个。这就是为什么我想自动化任务。
    猜你喜欢
    • 1970-01-01
    • 2017-09-22
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多