我正在尝试从文本文件中的列中提取数据。其中一个列有一个标题,我还需要提取一个包含标题重复条目的整列,即:
col1 col2 col3
1 1 1
2 2 2
3 3 3
成:
col1 col2 col3 col3
1 1 1 col3
2 2 2 col3
3 3 3 col3
我正在努力隔离标题。
for line in my_file:
line = line.split("\t")
column = line[0:3] #col1-3
如何从col3获取标题然后重复它?我是否必须首先按"\n"
分割,然后按"\t"
分割?
我尝试这样做但收到错误消息?
答案 0 :(得分:0)
您可以使用Python的 public ActionResult Submit()
{
Customer custObj = new Customer();
custObj.CustomerCode = Request.Form["CustomerCode"];
custObj.CustomerName = Request.Form["CustomerName"];
if (ModelState.IsValid)
return View("Load", obj);
else
return View("EnterCustomer");
}
模块,如下所示。这可以自动处理所有列的拆分。默认情况下,它假定列以逗号分隔,但可以通过指定要使用的分隔符将其切换到选项卡:
public ActionResult Submit(Customer obj)
{
//Customer custObj = new Customer();
//custObj.CustomerCode = Request.Form["CustomerCode"];
//custObj.CustomerName = Request.Form["CustomerName"];
if (ModelState.IsValid)
return View("Load", obj);
else
return View("EnterCustomer");
}
对于您的给定输入,您将获得以下输出(列以制表符分隔):
CSV
使用Python 2.7.9进行测试
答案 1 :(得分:0)
为什么不使用熊猫。
import pandas as pd
df = pd.read_csv("filename.tsv",sep="\t")
为了获得列标题,您还可以使用
df.ix[:,2:]
答案 2 :(得分:0)
with open('/home/prashant/Desktop/data.txt') as f:
for l in f:
print l.strip( ).split("\n")
这可能会解决我遇到的问题结果
[col1 col2 col3]
[1 1 1]
[2 2 2]
[3 3 3]