从文件名添加列作为日期

时间:2013-03-25 20:47:50

标签: python

我是python的新手,没有以前的编程背景。但是,我打算参加我的Univ提供的python编程课程。这个秋天。我有一个小项目要完成,但我需要处理超过5 GB的小文本文件(每个50 kb)。

我有很多文件名为20130325rand.dat。该文件有3行标题(我需要删除)。我需要创建一个列,并将该列中文件名的前8个字符添加为日期(mm / dd / yyyy)。

另外,我需要计算文件中每第12行变量的平均值(每5分钟测量一次读数,需要计算每小时平均值)。我知道这很多工作但我非常感谢任何建议,指示和帮助。感谢。

截图:

screenshot

1 个答案:

答案 0 :(得分:1)

一些指示:

将文本文件读入行列表:

with open('20130325rand.dat') as df:
    lines = df.readlines()

这将为您提供一个行列表,例如

In [17]: lines
Out[17]: ['# header 1', '# header 2', '# header 3', 'line 0', 'line 1', 'line 2', 'line 3', 'line 4', 'line 5', 'line 6', 'line 7', 'line 8', 'line 9', 'line 10', 'line 11', 'line 12', 'line 13', 'line 14', 'line 15', 'line 16', 'line 17', 'line 18', 'line 19', 'line 20', 'line 21', 'line 22', 'line 23', 'line 24']

要跳过前三行,然后每隔12行获取一次:

In [18]: lines[3::12]
Out[18]: ['line 0', 'line 12', 'line 24']

这称为slicing。您可以对文本执行相同的操作:

In [19]: '20130325rand.dat'[:8]
Out[19]: '20130325'

python的online documentation包含tutorial。但是互联网上还有很多其他产品。

欢迎使用Python,祝你好运!