gpt4 book ai didi

python - 如何逐行应用函数,并在每一步(附加)保存 csv?

转载 作者:太空宇宙 更新时间:2023-11-04 11:14:04 24 4
gpt4 key购买 nike

我正在使用以下脚本(Python 3),目的是

  • 逐行应用函数
  • 将每个结果行写入 csv。

更准确地说,我只是想将每一行附加到现有文件。

代码:

with open('file.csv', 'a') as f:  
df['newcolumn'] = df.apply(some_function, axis=1, result_type='expand')
df.to_csv(f, mode='a', header=f.tell()==0, encoding='utf-8', index=False)

此代码的问题:显然,脚本不会逐行写入 *.csv,但仅在计算完所有行后才创建完整的 csv。对于脚本中的任何错误,这意味着它以零内容结束。

我如何重写脚本,以便 file.csv 在每一步都更新,并且在完成之前不会为空?

谢谢!

最佳答案

如果出现问题,您可以更改函数代码以返回一些默认值或回退值,通过这样做,您可以通过一次调用将数据帧保存为 csv。

def some_function(row):
try:
#return your results of processing
except:
#return a default, fallback or None if error occurred

但是这会保存你所有的行,如果你不希望你可以用某些条件过滤你的数据框,那么你将它保存为 csv。类似的东西:

df[df['newcolumn'] != <Some Value>]

关于python - 如何逐行应用函数,并在每一步(附加)保存 csv?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57443382/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com