为了账号安全,请及时绑定邮箱和手机立即绑定

使用 to_csv 循环仅打印最后一个文件(Python)

使用 to_csv 循环仅打印最后一个文件(Python)

慕村225694 2023-07-27 09:58:31
我正在尝试从文件夹加载多个 csv 文件,使用计算每个文件缺失值的函数,然后保存包含输出的新 csv 文件。当我编辑脚本来打印输出时,我得到了预期的结果。但是,循环仅将最后一个文件保存到目录中。我正在使用的代码是:from pathlib import Pathimport pandas as pdimport osimport globfiles = glob("C:/Users/61437/Desktop/test_folder/*.csv") # get all csv's from foldern = 0for file in files:    print(file)    df = pd.read_csv(file, index_col = False)    d = calc_missing_prices(df) # calc_missing_prices is a user defined function    print(d)    d.to_csv(r'C:\Users\61437\Desktop\test_folder\derived_files\derived_{}.csv'.format(n+1), index = False)print() 命令返回预期的输出,对于我的数据来说是:C:/Users/61437/Desktop/test_folder\file1.csv   V_150  V_200  V_300  V_375  V_500  V_750  V_10000   3.00   2.75   4.50   6.03   8.35  12.07   15.001   2.32   3.09   4.63   5.00   9.75  12.50   12.252   1.85   2.47   3.70   4.62   6.17   9.25   12.333   1.75   2.00   4.06   6.50   6.78  10.16   15.20C:/Users/61437/Desktop/test_folder\file2.csv   V_300  V_375  V_500  V_750  V_10000   4.00   4.50   6.06   9.08   11.001   3.77   5.00   6.50   8.50   12.562   3.00   3.66   4.88   7.31    9.50C:/Users/61437/Desktop/test_folder\file3.csv   V_500  V_750  V_10000   5.50   8.25   11.001   6.50   8.50   12.172   4.75   7.12    9.50但是,唯一保存的 csv 文件是“衍生_1.csv”,其中包含 file3.csv 的输出我正在做什么阻止创建所有三个文件?
查看完整描述

1 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

您没有n在循环内递增。您的数据存储在文件中derived_1.csv,该文件在每次迭代时都会被覆盖。循环执行完毕后for,仅保存最后一个 csv。

将该行包含在循环n += 1内,for以便在每次迭代时将其增加 1。


查看完整回答
反对 回复 2023-07-27
  • 1 回答
  • 0 关注
  • 69 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信