【问题标题】:pandas to append result into csv file熊猫将结果附加到 csv 文件中
【发布时间】:2018-06-18 01:56:42
【问题描述】:

我正在尝试将函数的结果附加到 csv 文件,但结果被覆盖,我只获取 csv 中最后一个文件的值。 我的代码是这样的:

def Read (indir= "C:/Users/SSA/Desktop/New folder",outfile= "C:/Users/SSA/Desktop/final.csv"):
    os.chdir(indir)
    fileList= glob.glob("*.csv")
    for filename in fileList:
        print(filename)
        df=pd.read_csv(filename)

        ......



        y = df3.iloc[:,15].max()
        z= df3.iloc[:,15].min()
        x = Total_Time - Utilisation_time
        f = x / len(great)
        p = 6 * On_I

        df = pd.DataFrame({'Result':[y,z,x,f,p ]})

        df.to_csv(outfile, index = False)
        df.append('df', outfile)

当我调用函数 Read() 时。 我得到的 csv 文件只有文件夹中最后一个文件的值。它没有被附加!

输出:(仅是最后一个文件的结果!!

filename
460.99
214.96
175.6663888889
0.0295237628
945.4583333333

【问题讨论】:

    标签: python csv dataframe append export-to-csv


    【解决方案1】:

    试试下面的逻辑,很简单,你也可以把它做成一个函数。

    path='path_of_folder'
    list_of_files=os.listdir(path)
    
    main_dat=pd.DataFrame()
    
    for fil in list_of_files:
        ### do your stuff
        data=pd.read_csv(path+fil)
        ### do your stuff
        df = pd.DataFrame({'Result':[y,z,x,f,p ]})
    
        main_dat=pd.concat([main_dat,df])
    
    main_dat.to_csv('save_your_output.csv',index=False) #your final result
    

    PS:你使用第一个字母作为函数名的大写,尽量避免它不应该与任何内置函数名相同。

    【讨论】:

      猜你喜欢
      • 2017-07-28
      • 1970-01-01
      • 2016-08-21
      • 2017-01-04
      • 2018-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-31
      相关资源
      最近更新 更多