将数组中的数据保存到csv文件中

时间:2019-06-01 01:10:34

标签: python csv

我制作了一个程序,使用python中的pandas数据框将两个数组保存到csv文件中,以便可以记录所有数据。

我尝试了下面列出的代码。

 U_8=[]
 start=[]
 U_8.append(d)
 start.append(str(time.time()))
 x=pd.DataFrame({'1st':U_8,  'Time Stamp':start})
 export_csv = x.to_csv (r'/home/pi/Frames/q8.csv', index = None, 
 header=True)

每次关闭程序并再次运行时,它都会覆盖存储在csv文件中的先前值。我希望它可以将新值与以前的值一起保存。如何将过去和现在的值存储在此csv文件中。

1 个答案:

答案 0 :(得分:0)

为了附加到csv而不是编写,请将mode='a'传递到df.to_csv。默认模式为'w',它将覆盖具有相同文件名的所有现有csv。但是,普通追加也会追加列标题,这些标题将在csv中显示为值。为了减轻这种情况,请在后续运行中传递header=Falsedf.to_csv(data, mode='a', header=False)
另一种方法是读取原始DataFrame并使用pd.concat将其与新结果结合在一起。工作流程将如下:

  1. 将原始csv读取到DataFrame中。
  2. 使用新结果创建一个DataFrame。
  3. 连接两个DataFrame。
  4. 将生成的DataFrame写入csv。

不必将.to_csv的返回值分配给变量。与df.to_csv(data)中一样,仍将导出到csv。