我有一个制表符分隔文件,该文件具有以下顺序的数据(大约2400行)-
| SNO | Model#|Agent Name | cost | MRP | date | Discount |
|---------------------------------------------------------------|
| 1 | 1112B | Chris | 689 | 998 | 01/01/2014 | 5% |
我想
(1)取出名称和相应的MRP并将其存储到新文件中
预期结果应为以下内容(存储在新的excel文件或制表符分隔的文本文件中)
| AgentName | MRP |
|-----------|------|
| Chris | 988 |
| A | 111 |
| B | 222 |
| C | 333 |
| D | 444 |
我开始执行以下操作,但无法完成-
with open ('/path.txt') as f:
for l in f:
print l.strip().split("\t")
答案 0 :(得分:1)
如果该文件以csv格式提供,那么您可以使用熊猫:
import pandas as pd
df = read_csv('/path to file.csv', sep='\t')
slice = df[['AgentName','MRP']]
slice.to_csv('new_file.csv', index=False)
答案 1 :(得分:1)
仅使用标准库csv module:
import csv
with open ('Project1.txt', 'rU') as from_fp, open('output.tsv', 'w') as to_fp:
csv_reader = csv.DictReader(from_fp, dialect=csv.excel_tab)
csv_writer = csv.writer(to_fp, delimiter='\t')
csv_writer.writerow(['AgentName', 'MRP'])
for row in csv_reader:
csv_writer.writerow([row.get('AgentName'), row.get('MRP')])
链接到demo