我正在尝试将数据导出到csv文件.它应该包含一个标题(来自datastack)和带有我的数据的重新包装数组(来自datastack).datastack中的一行与数据集的长度相同.下面的代码可以工作,但它会从datastack中删除第一行的部分内容.任何想法为什么会这样?
s = ','.join(itertools.chain(dataset)) + '\n'
newfile = 'export.csv'
f = open(newfile,'w')
f.write(s)
numpy.savetxt(newfile, (numpy.transpose(datastack)), delimiter=', ')
f.close()
Run Code Online (Sandbox Code Playgroud)
你是一个文件名为'export.csv'的文件两次,一次打电话open(),一次打电话numpy.savetxt().因此,有两个打开的文件句柄竞争相同的文件名.如果您传递文件句柄而不是文件名,则numpy.savetxt()可以避免此竞争条件:
s = ','.join(itertools.chain(dataset)) + '\n'
newfile = 'export.csv'
f = open(newfile,'w')
f.write(s)
numpy.savetxt(f, (numpy.transpose(datastack)), delimiter=', ')
f.close()
Run Code Online (Sandbox Code Playgroud)