合并在 For 循环中生成的 DataFrame
使用多个数据源时,通常需要将数据组合到单个合并的数据框中。此问题说明了尝试使用 pd.concat 函数附加 for 循环中生成的数据帧时面临的常见问题。
问题中提出的初始方法由于错误调用 pd.append 而面临错误。该函数至少需要两个参数,第一个参数是要附加的数据帧,第二个参数应该是要附加的数据。代码尝试将数据追加到自身,这是无效的。
追加数据帧的正确方法是将它们存储在列表中,然后使用 pd.concat 将它们合并到单个数据帧中。这是一个改进的解决方案:
<code class="python">appended_data = [] for infile in glob.glob("*.xlsx"): data = pandas.read_excel(infile) appended_data.append(data) # concatenate the list of dataframes appended_data = pd.concat(appended_data) # save the merged dataframe to an excel file appended_data.to_excel('appended.xlsx')</code>
此代码导入必要的库,迭代 Excel 文件,从每个文件读取数据并将数据帧存储在列表中。最后,它使用 pd.concat 连接数据帧列表并将合并的数据帧导出到新的 Excel 文件。这种方法允许无缝附加循环中生成的数据帧。
以上是如何使用 pd.concat 合并在 For 循环中生成的 DataFrame?的详细内容。更多信息请关注PHP中文网其他相关文章!