在不改变数据顺序的情况下,输出值(<0)和其对应同一id的前一条输入值需要的结果相同
用字典记录下【ID和输入输出列的大小(1/0)标记】作为键名称,然后遍历时判断字典存在记录设置为0
不过负数没看出来题主怎么搞法?比如105191这个id。
如果是id一样,值大于0或者小于0的第一条记录标记为1,其他标记为0用下面的
from openpyxl import load_workbook
wb = load_workbook('test.xlsx')
sheet1=wb["Sheet1"]
kv={}
for i in range(2,sheet1.max_row+1):
id=sheet1.cell(i,1).value
value=sheet1.cell(i,2).value
suffix="1"
if value<0:
suffix="0"
key=str(id)+"-"+suffix
if key in kv:
sheet1.cell(i,3).value=0
else:
sheet1.cell(i,3).value=1
kv[key]=1
wb.save("test.xlsx")