我有一个文件如下(m,deg,deg)
0 0 5
10 0.65 12
20 0.61 14
30 0.53 3
40 0.54 6
我想在python中的同一列中的行之间进行操作,例如行之间的第三列diff,例如(12-5)(14-12)(3-14)(6-3)等等
非常感谢您的帮助
答案 0 :(得分:2)
首先在文件上迭代一次,丢弃标题行。
在空白处拆分每一行,并从每一行中拉出第三列并将其转换为int(这是您似乎唯一关心的字段)。
将结果自身偏移1,将输出映射并减去 - 这样我们就可以从第二行减去第一行,从第三行减去第二行,依此类推。
with open("tab-separated-values") as tsv:
splitLines = [line.split() for line in tsv]
degs = [int(line[2]) for line in splitLines[1:]]
print [deg[1] - deg[0] for deg in zip(degs, degs[1:])]