我正在尝试使用 Python 在 csv 文件的行上实现滑动/移动窗口方法。每行可以有一个带有二进制值的列yes
或no
. 基本上,我想要罕见的yes
噪音。这意味着如果说我们在 5 个窗口(最多 5 个)中有3 yes
行,请保留它们。但如果有 1 或 2,让我们将它们更改为. 我怎样才能做到这一点?no
例如,以下内容yes
都应变为no
.
...
1,a1,b1,no,0.75
2,a2,b2,no,0.45
3,a3,b3,yes,0.98
4,a4,b4,yes,0.22
5,a5,b5,no,0.46
6,a6,b6,no,0.20
...
但在下面,我们保持原样(可以有 5 个窗口,其中 3 个是yes
):
...
1,a1,b1,no,0.75
2,a2,b2,no,0.45
3,a3,b3,yes,0.98
4,a4,b4,yes,0.22
5,a5,b5,no,0.46
6,a6,b6,yes,0.20
...
我尝试写一些东西,窗口为 5,但卡住了(它不完整):
window_size = 5
filename='C:\\Users\\username\\v3\\And-'+v3file.split("\\")[5]
with open(filename) as fin:
with open('C:\\Users\\username\\v4\\And2-'+v3file.split("\\")[5],'w') as finalout:
line= fin.readline()
index = 0
sequence= []
accs=[]
while line:
print(line)
for i in range(window_size):
line = fin.readline()
sequence.append(line)
index = index + 1
fin.seek(index)