读取文本文件并匹配值阈值

时间:2012-11-06 03:13:39

标签: python loops text

我有大量的.txt文件(N> 1000),这些文件都有感兴趣的数据,我希望找出其中"意思是"值超过给定的阈值(例如,0.5),并打印出这种情况的文件名。每个文件中的数据组织如下:

[
    {
      "parameter": {
          "max": 0.6640571758027143,
          "mean": 0.13404294175225137,
          "min": 0.0,
          "std": 0.09435715828616785
      },
      {
        "intensity": [
            {
                "max": [
                    3.1719575216784217
                ],
                "mean": [
                    -3.552713678800501e-17
                ],
                "min": [
                    -2.707115982837323
                ],
                "std": [
                    1.0000000000000004
                ]
                ...

为了使事情稍微复杂一些,我只想阅读"意思是" "参数"的值而不是"强度"。

我有一个想法,我应该使用for循环读取此文件,大致包含以下代码:

subjects = [allmyfilenames]
for subj in subjects:
    file = open('C:/%s.txt' %subj, 'r')
    for line in file.readlines(): print line

从那里,我有点失落。如何识别用于匹配阈值(0.5)的正确行?

1 个答案:

答案 0 :(得分:0)

尝试这样的事情,我并不完全确定你的数据格式,但是这样的事情可能适用于上面的数据格式。未经测试**

subjects = [allmyfilenames]
    for subj in subjects:
        with open('C:/%s.txt' %subj, 'r') as datafile:
            data = json.load(datafile)
            if data[0]['parameter']['mean'] > 0.5:
                print subj