Wandering_night 2024-08-18 23:39 采纳率: 47.1%
浏览 3

python合并表格

img

我需要将两个excel表格合并到一个新的表格中,程序报错如图。请问出错的原因和解决方法,谢谢。

  • 写回答

3条回答 默认 最新

  • 何事_ 2024-08-18 23:40
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    根据你提供的代码和错误信息,出错的原因在于你试图将一个numpy数组对象当作函数来调用。具体来说,在这一行代码中:

    dfs.extend(D df.values())

    你可能是想将每个Excel文件中的数据添加到dfs列表中。但是,这里df.values已经是一个属性,而不是一个函数。所以你不应该在此前面加上括号()来调用它。你应该直接使用df.values来获取数据。此外,这一行代码中还有一个拼写错误,应该是dfs.extend(df.values)而不是dfs.extend(D df.values())。所以正确的代码应该是这样的:

    dfs = []
    for file in os.listdir('./'): 
        if file.endswith('.xlsx'): 
            df = pd.read_excel(file) 
            dfs.extend(df.values)
    

    这样修改后,你的代码应该可以正常运行,将每个Excel文件中的数据添加到dfs列表中。当你将所有的Excel文件都添加到列表中后,你可以使用pandas的DataFrame函数来创建一个新的Excel文件并保存所有的数据。以下是如何创建一个新的Excel文件并保存数据的示例代码:

    import pandas as pd
    import os
    
    dfs = []
    for file in os.listdir('./'): 
        if file.endswith('.xlsx'): 
            df = pd.read_excel(file) 
            dfs.extend(df.values)
    
    # 将所有的数据转换为一个DataFrame对象,并保存到新的Excel文件中
    result_df = pd.DataFrame(dfs)
    result_df.to_excel('merged_files.xlsx', index=False)  # 不包含索引列
    

    这段代码会创建一个名为'merged_files.xlsx'的新Excel文件,其中包含所有合并的数据。注意这里的文件名你可以根据需要自行更改。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月18日