假设我有一个包含 50K 行的文件,将 (Account,Cusip) 视为主键。我想在具有相同主键的行中保留最后一行。对于具有相同主键的行,保留最后一行我该如何实现?
Account Cusip Amount
A a 500
A a 450
A b 500
B b 600
B b 350
C a 300
C c 100
C c 200
C c 500
预期结果
Account Cusip Amount
A a 450
A b 500
B b 350
C a 300
C c 500
答案1
使用以下 Python 脚本按预期执行操作。该文件1.txt
包含您的输入数据:
key1=''
key2=''
amount=''
with open('1.txt') as f:
for line in f:
[nkey1,nkey2,namount]=line.split()
if nkey1==key1 and nkey2==key2:
amount=namount
else:
print '%s\t%s\t%s' % (key1,key2,amount)
key1=nkey1
key2=nkey2
amount=namount
print '%s\t%s\t%s' % (key1,key2,amount)