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 文件中存储过去和现在的值。
解决方案
为了追加到 csv 而不是写入,传递mode='a'
到df.to_csv
. 默认模式是'w'
覆盖具有相同文件名的任何现有 csv。但是,普通附加也会附加列标题,这些标题将在您的 csv 中显示为值。为了缓解这种情况,请传递header=False
您的后续运行:df.to_csv(data, mode='a', header=False)
.
另一种方法是读取您的原始 DataFrame 并将pd.concat
其与您的新结果结合使用。工作流程将是这样的:
- 将原始 csv 读入 DataFrame。
- 创建具有新结果的 DataFrame。
- 连接两个 DataFrame。
- 将生成的 DataFrame 写入 csv。
.to_csv
不必将 的返回值分配给变量。如在df.to_csv(data)
仍将导出到 csv。
推荐阅读
- javascript - 计时器用完后重定向到主页
- python - flask python 3 TypeError(“'NoneType'对象不可下标”
- assembly - 装配编程输入+5
- javascript - 在无线电类型字段上同时提供 :value 和 v-model
- java - 我可以只创建一个处理整个应用程序的活动吗?
- docker - 在打包器构建中使用 docker 卷
- android - Kivy android 应用程序打开后立即崩溃
- c++ - 在 C++ 中重载运算符时与符号和取消引用“this”
- python - 在Python中对列表的元素求和
- r - 在 jekyll-Github 个人网页中绘制 R 图