首页 > 解决方案 > 如何从python中的多个tsv列生成一个tsv文件

问题描述

我是 python 新手,还在学习。我有两个tsv格式如下的文件:

文件 1(infile):

  16 cat    22  newData 1.0 u
    19 cat  27 newData  1.0 u
    2 dog   81  newData 1.0 u
    11 tiger 55 newData 1.0 u

文件 2(输出文件):

99 fish 22  oldData 1.0 u
4 cat   27 oldData  1.0 u
2 turtle 81 oldData 1.0 u
1 lion  55  oldData 1.0 u

期望的输出:

  99 fish   22  newData 1.0 u
   4 cat    27 newData  1.0 u
   2 turtle 81  newData 1.0 u
   1 lion  55   newData 1.0 u

我可以成功读取新数据,但无法用 newData 替换 oldData 列,这是一个示例代码:

# Read new data    
with open('/path/to/new/data.tsv') as infile:
      newData = {}
        for line in infile:
            parts = line.decode('utf-8').split('\t')
            if len(parts) > 0:
                token = parts[0].strip()
                newData = parts[3]
                print(newData)

我正在使用python 2.7。如何生成第三个文件,该文件具有来自文件 2 的列 [0、1、2、4、5] 和来自文件 1 的列 [3]?谢谢,

标签: pythonpython-2.7csvtext

解决方案


推荐阅读