使用 Python(或 R)将文本数据提取到有意义的表中进行分析

kd68

我正在从事一个工程项目,在该项目中我使用了档案中的机器性能数据。机器大约每 5 秒生成一个数据集,然后该数据可在多个.txt文件中按日期使用,每个文件包含以下格式的数据。下面显示的数据来自2013_04_17.txt包含该特定日期所有性能数据文件。

2013-04-27 00:00:05.011
V_1 100  V_2 26695  V_3 33197  V_4 c681  V_5  29532
V_6 4600  V_7 4606  V_8 4f55  V_9 5a  V_10  8063  V_11  4300  V_12  4700
V_13 4504  V_14 4400  V_15 4202  V_16 255  V_17  4300  V_18  91  V_19  6f
V_20 300  V_21 14784 
V_22 5.085  V_23 7.840  V_24 -8.061  V_25 36.961

2013-04-27 00:00:10.163
V_1 100  V_2 26695  V_3 33199  V_4 c681  V_5  29872
V_6 4600  V_7 4606  V_8 4f55  V_9 5a  V_10  8063  V_11  4300  V_12  4700
V_13 4504  V_14 4400  V_15 4202  V_16 255  V_17  4300  V_18  91  V_19  6f
V_20 300  V_21 14790 
V_22 5.085  V_23 7.840  V_24 -8.061  V_25 37.961

.....

我需要以表格格式或 CSV 格式查看此数据,以便能够生成性能图并检测任何异常情况。但是,我没有足够的 Python 编程经验来解析这个文本文件。

我看着大熊猫和正则表达式的一些想法,但一直未能取得理想的结果,我希望能有以表格形式或与头作为变量日期CSV文件数据,时间V_1V_2V_3,等以及随后的行作为每 5 秒获得的所有值。

约翰·兹温克

您可以从文件中一次读取一个令牌开始:

with open('2013_04_17.txt') as infile:
    for line in infile:
        for token in line.split():
            print(token)

之后,您只需要创建一个状态机来记住您所在的部分,并在找到结束时处理每个部分:

def process_record(timestamp, values):
    """print CSV format"""
    print(','.join([timestamp] + values))

with open('t.txt') as infile:
    timestamp = None
    values = []
    for line in infile:
        line = line.strip()
        if timestamp is None:
            timestamp = line
        elif not line: # blank line is separator
            process_record(timestamp, values)
            timestamp = None
            values = []
        else:
            values.extend(line.split()[1::2])
    if timestamp is not None: # process last record, no separator after it
        process_record(timestamp, values)

这为您提供了 CSV 输出:

2013-04-27 00:00:05.011,100,26695,33197,c681,29532,4600,4606,4f55,5a,8063,4300,4700,4504,4400,4202,255,4300,91,6f,300,14784,5.085,7.840,-8.061,36.961
2013-04-27 00:00:10.163,100,26695,33199,c681,29872,4600,4606,4f55,5a,8063,4300,4700,4504,4400,4202,255,4300,91,6f,300,14790,5.085,7.840,-8.061,37.961

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用有意义的空格读取文件(Python)

来自分类Dev

使用R进行回归的randomForest有意义吗?

来自分类Dev

使用Python从网站提取文本数据:

来自分类Dev

使用 git diff 提取有意义的更改

来自分类Dev

使用表达式语言在Apache Nifi中进行布尔条件评估没有意义

来自分类Dev

使用Selenium和Python将表数据提取到pandas数据框中

来自分类Dev

使用Python将文本中的部分数据提取到csv中

来自分类Dev

将赛普拉斯数据导入到EHR中以进行QRDA类别1(CQM-捕获和导出)的有意义的使用

来自分类Dev

同时使用countvectorizer和tfidfvectorizer作为特征向量与KMeans进行文本聚类是否有意义?

来自分类Dev

什么时候在Python Regex中对re.findall使用re.search有意义?

来自分类Dev

什么时候在Python Regex中对re.findall使用re.search有意义?

来自分类Dev

使用DBSCAN对GPS数据进行聚类,但是聚类没有意义(就大小而言)

来自分类Dev

在使用“代码优先”的情况下,使用MetadataType强制进行验证是否有意义?

来自分类Dev

可以在没有有意义的替代文本的情况下使用longdesc吗?

来自分类Dev

可以在没有有意义的替代文本的情况下使用longdesc吗?

来自分类Dev

使用JavaScript进行输入消毒不是没有意义吗?

来自分类Dev

使用commitWithin进行Solr性能没有意义

来自分类Dev

在进行同步 IO 基准测试时使用队列深度是否有意义?

来自分类Dev

文本数据按摩以在python中进行距离计算

来自分类Dev

SQL-使用ORM时,对于多对多关系不使用数据透视表有时有意义吗?

来自分类Dev

对均衡的数据集使用sample_weights是否有意义?

来自分类Dev

将sklearn GridSearchCV与CalibratedClassifierCV一起使用是否有意义?

来自分类Dev

在性能方面将Netty与Disruptor结合使用是否有意义?

来自分类Dev

如何使用参数将整数值提取到带有Python连接器的MySQL数据库中

来自分类Dev

使用R读取和搜索极大的CSV文件是否有意义?

来自分类Dev

使用python从sql提取数据,进行转换并写回sql表

来自分类Dev

Python Scapy-有意义的接口名称

来自分类Dev

Python从cProfile获得有意义的结果

来自分类Dev

python中的`def main(args):`有意义吗?

Related 相关文章

  1. 1

    使用有意义的空格读取文件(Python)

  2. 2

    使用R进行回归的randomForest有意义吗?

  3. 3

    使用Python从网站提取文本数据:

  4. 4

    使用 git diff 提取有意义的更改

  5. 5

    使用表达式语言在Apache Nifi中进行布尔条件评估没有意义

  6. 6

    使用Selenium和Python将表数据提取到pandas数据框中

  7. 7

    使用Python将文本中的部分数据提取到csv中

  8. 8

    将赛普拉斯数据导入到EHR中以进行QRDA类别1(CQM-捕获和导出)的有意义的使用

  9. 9

    同时使用countvectorizer和tfidfvectorizer作为特征向量与KMeans进行文本聚类是否有意义?

  10. 10

    什么时候在Python Regex中对re.findall使用re.search有意义?

  11. 11

    什么时候在Python Regex中对re.findall使用re.search有意义?

  12. 12

    使用DBSCAN对GPS数据进行聚类,但是聚类没有意义(就大小而言)

  13. 13

    在使用“代码优先”的情况下,使用MetadataType强制进行验证是否有意义?

  14. 14

    可以在没有有意义的替代文本的情况下使用longdesc吗?

  15. 15

    可以在没有有意义的替代文本的情况下使用longdesc吗?

  16. 16

    使用JavaScript进行输入消毒不是没有意义吗?

  17. 17

    使用commitWithin进行Solr性能没有意义

  18. 18

    在进行同步 IO 基准测试时使用队列深度是否有意义?

  19. 19

    文本数据按摩以在python中进行距离计算

  20. 20

    SQL-使用ORM时,对于多对多关系不使用数据透视表有时有意义吗?

  21. 21

    对均衡的数据集使用sample_weights是否有意义?

  22. 22

    将sklearn GridSearchCV与CalibratedClassifierCV一起使用是否有意义?

  23. 23

    在性能方面将Netty与Disruptor结合使用是否有意义?

  24. 24

    如何使用参数将整数值提取到带有Python连接器的MySQL数据库中

  25. 25

    使用R读取和搜索极大的CSV文件是否有意义?

  26. 26

    使用python从sql提取数据,进行转换并写回sql表

  27. 27

    Python Scapy-有意义的接口名称

  28. 28

    Python从cProfile获得有意义的结果

  29. 29

    python中的`def main(args):`有意义吗?

热门标签

归档