我是一名蟒蛇初学者。我得到的数据文件包含以下内容:(这些是分隔符)
(x values) (y values)
113 0
116 2
119 0
214 3
220 0
230 3
290 5
从数据文件中,我必须删除y值为0的x和y数据。这可以通过以下方式完成。
import numpy as np
files = ['my_data.txt']
for file in files:
data = np.loadtxt(file,unpack=True)
data_filtered_both = data[:,data[1,:] != 0]
x_array=np.array(data_filtered_both[1])
y_array=np.array(data_filtered_both[0])
现在,我想创建一个包含新数据文件的csv文件,该文件包含x_array和y_array(制表符分隔)。看起来像这样..
(x_array) (y_array)
116 2
214 3
230 3
290 5
到目前为止,我已尝试过以下内容。
import csv
with open('text.csv', 'w') as f:
writer = csv.writer(f, delimiter='\t')
writer.writerows(zip(x_array,y_array)+'\n')
f.close()
我的python在writer.writerows(zip(x_array,y_array)+'\n')
显示一个箭头,表示该行可能写错了。我的内核在没有完成任务的情况下继续死亡,所以我不确定它为什么不起作用。
这是创建csv文件的正确方法吗?或者还有其他建议吗?
谢谢!
答案 0 :(得分:1)
如果没有使用csv模块,下面就是我解决这个问题的方法。
<some-component></some-component>
代码非常明显,但如果你需要解释它是如何工作的,我会非常乐意提供帮助:)
另外,请记住,与使用'with'语句相比,之后关闭文件不是必需的,因为缩进中的所有指令一旦执行完毕,文件就会自动关闭。