我有一个以这种格式保存数据的文本文件:
21-Jun-2013 22:12:52:137, INFO, *********************************************************************
21-Jun-2013 22:12:52:137, INFO, Data being shown
21-Jun-2013 22:12:52:137, INFO, *********************************************************************
21-Jun-2013 22:12:52:137, INFO, Meta-data
21-Jun-2013 22:12:52:137, INFO, Meta-data
21-Jun-2013 22:12:52:137, INFO, Exp 1 2
21-Jun-2013 22:12:52:168, INFO, -------------------------------------------------------------
21-Jun-2013 22:12:52:184, INFO, 1 0.00000 * 1.00000 0.00000 * 1.00000
21-Jun-2013 22:12:31:919, INFO, 2 0.00000 * 1.00000 0.00000 * 2.00000
21-Jun-2013 22:12:31:997, INFO, 3 0.00000 * 5.33380 0.00000 * 5.33380
21-Jun-2013 22:12:32:059, INFO, 4 0.00000 * 0.00000 0.00000 * 0.00000
21-Jun-2013 22:12:32:137, INFO, 5 0.00000 * 0.00000 0.00000 * 0.00000
该文件是程序的事件日志,用于调试程序。每行都以时间戳开头。文件的前 5 行包含与文本文件相关的元数据,因此不感兴趣。要分析的数据从第 6 行开始。第 6 行是列的标题。第一列Exp
存储数据的行 ID。随后的列标题只不过是列 ID。这些列中的每一列中的数据都是 2 个相乘的数量(比如 A*B)。实际数据的列 ID 大约为千,行 ID 大约为几百万。
现在,我想使用R
或Python
生成字典列表来处理这些数据。对于给定的示例,我想要一个这样的字典列表:
expressionList = [ row1 , row2 , row3, row4, row5 ]
列表中的每个元素都应该是一个字典。每个元素的展开形式如下图所示:
row1 = { 'col1A': 0.00000, 'col1B': 1.00000, 'col2A': 0.00000, 'col2B': 1.00000 }
row2 = { 'col1A': 0.00000, 'col1B': 1.00000, 'col2A': 0.00000, 'col2B': 2.00000 }
row3 = { 'col1A': 0.00000, 'col1B': 5.33380, 'col2A': 0.00000, 'col2B': 5.33380 }
row4 = { 'col1A': 0.00000, 'col1B': 0.00000, 'col2A': 0.00000, 'col2B': 0.00000 }
row5 = { 'col1A': 0.00000, 'col1B': 0.00000, 'col2A': 0.00000, 'col2B': 0.00000 }
我对这两种编程语言都很陌生 - 非常感谢任何帮助/指导!