用一个值python替换某列中的所有值

时间:2015-02-26 04:18:31

标签: python replace

在这个论坛中亲爱的Python用户,

我有一个包含大量ascii格式的列和行的数据文件。

此文件包含数字和字母的混合数据,例如:

 15.20000           120.60000 98327      get data information here.  SURFACE DATA FROM ??????????? SOURCE    FM-12 SYNOP                                                                                155.00000         1         0         0         0         0         T         F         F   -888888   -888888      20020531210000 100880.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0-888888.00000      0

我只是在文件中放入一行的一部分。 我的目的是用一个值替换某个列中的所有值。 例如,我想用999更改第3列中的所有值。 所以我使用了如下代码:

import csv
with open("SURFACE1", "rb") as infile, open("output.txt", "wb") as outfile:
    reader = csv.reader(infile, delimiter="\t")
    writer = csv.writer(outfile, delimiter="\t")
    for row in reader:
        row[2] = "999" 
        writer.writerow(row)

即使它有超过30列,它似乎没有工作导致"索引错误"。 任何想法或帮助都会非常感激。

谢谢你, 艾萨克

0 个答案:

没有答案