English 中文(简体)
使用 python 对文本文件进行换代时需要帮助
原标题:need help in anayzing a text file using python
  • 时间:2012-05-23 17:10:44
  •  标签:
  • python

我有包含3列的文本文件, 含有字符串的第一列, 含有整数的第二列, 以及带有像这样浮动点的第三列 :

steve   134     0.000010

Harry   133 0.000012

joanne  134 0.000022

steve   135 0.000024

joanne  133 0.000045

steve   133 0.000078

joanne  133 0.000079    

joanne  133 0.000081    

joanne  136 0.000083

steve   134 0.000085

steve   135 0.000087

我想要这样的输出:

steve   134(count=2,Time interval=0.000085-0.000010),133(count=1,Time interval=0.000078-0.000000),135(count=2,Time interval=0.000087-0.000024),136(count=0, Time interval=0.000000-0.000000)

harry   134(count=0, Time interval),133(count=1, Time interval),135(count=0, Time interval),136(count=0, Time interval)

joanne  134(count=1, Time interval),133(count=3, Time interval),135(count=0, Time interval),136(count=1, Time interval) 

[哈瑞和约安的时间间隔与史蒂夫以同样的方式计算]。

基本上,如果我采用史蒂夫,我必须计算每个史蒂夫的133,134,135,136个条目的数量,以及133,134,135,136个条目的间隔时间。我希望你们能得到我的查询。

最佳回答

这应该能让你开始

>>> from collections import defaultdict
>>> names = defaultdict(list)
>>> with open( f.txt ) as f:
...    lines = [l.split() for l in f.readlines() if l.strip()]
...    for l in lines:
...      names[l[0]].append([l[1],l[2]])
>>> for i in names.iteritems():
...    print i
... 
( steve , [[ 134 ,  0.000010 ], [ 135 ,  0.000024 ], [ 133 ,  0.000078 ], [ 134 , 
 0.000085 ], [ 135 ,  0.000087 ]])
( joanne , [[ 134 ,  0.000022 ], [ 133 ,  0.000045 ], [ 133 ,  0.000079 ], [ 133 ,  0.000081 ], [ 136 ,  0.000083 ]])
( Harry , [[ 133 ,  0.000012 ]])
问题回答

暂无回答




相关问题
Can Django models use MySQL functions?

Is there a way to force Django models to pass a field to a MySQL function every time the model data is read or loaded? To clarify what I mean in SQL, I want the Django model to produce something like ...

An enterprise scheduler for python (like quartz)

I am looking for an enterprise tasks scheduler for python, like quartz is for Java. Requirements: Persistent: if the process restarts or the machine restarts, then all the jobs must stay there and ...

How to remove unique, then duplicate dictionaries in a list?

Given the following list that contains some duplicate and some unique dictionaries, what is the best method to remove unique dictionaries first, then reduce the duplicate dictionaries to single ...

What is suggested seed value to use with random.seed()?

Simple enough question: I m using python random module to generate random integers. I want to know what is the suggested value to use with the random.seed() function? Currently I am letting this ...

How can I make the PyDev editor selectively ignore errors?

I m using PyDev under Eclipse to write some Jython code. I ve got numerous instances where I need to do something like this: import com.work.project.component.client.Interface.ISubInterface as ...

How do I profile `paster serve` s startup time?

Python s paster serve app.ini is taking longer than I would like to be ready for the first request. I know how to profile requests with middleware, but how do I profile the initialization time? I ...

Pragmatically adding give-aways/freebies to an online store

Our business currently has an online store and recently we ve been offering free specials to our customers. Right now, we simply display the special and give the buyer a notice stating we will add the ...

Converting Dictionary to List? [duplicate]

I m trying to convert a Python dictionary into a Python list, in order to perform some calculations. #My dictionary dict = {} dict[ Capital ]="London" dict[ Food ]="Fish&Chips" dict[ 2012 ]="...

热门标签