【发布时间】:2015-11-19 22:28:02
【问题描述】:
由于一些新格式化且结构不佳的数据文件,我遇到了一个有趣的问题。它们是文本文件,以逗号分隔,包含多组数据,每组数据都有一个唯一的标题。最初我使用 genFromTxt 仅读取一个带有一个标头的数据实例。现在有了多个实例, genFromTxt 就无法处理它。将文件拆分并将每个单独的实例输入 genFromTxt 的最佳方法是什么?这是该文件的示例。来自第一个实例的数据立即与第二个实例的标头对接。每个文件重复大约 20 次。我还没有找到一个通用的分隔符来分隔它们。
0.8 9999.0 999.0 999.0 999.0 9999.0 9999.0 999.0 999.0 999.0 9999.000 999.000 999.0 999.0 99999.0 9.0 9.0 9.0 9.0 9.0 9.0
0.5 9999.0 999.0 999.0 999.0 9999.0 9999.0 999.0 999.0 999.0 72.380 -7.761 999.0 999.0 99999.0 9.0 9.0 9.0 9.0 9.0 9.0
0.3 9999.0 999.0 999.0 999.0 9999.0 9999.0 999.0 999.0 999.0 9999.000 999.000 999.0 999.0 99999.0 9.0 9.0 9.0 9.0 9.0 9.0
0.0 9999.0 999.0 999.0 999.0 9999.0 9999.0 999.0 999.0 999.0 72.381 -7.760 999.0 999.0 99999.0 9.0 9.0 9.0 9.0 9.0 9.0
-1.0 906.7 20.0 18.9 92.8 -10.1 -3.7 10.7 70.0 999.0 72.380 -7.761 999.0 999.0 953.8 1.0 1.0 1.0 1.0 1.0 9.0
Data Type: AVAPS SOUNDING DATA, Channel 2/Descending
Project ID: DYNAMO
Release Site Type/Site ID: NOAA P3/N43RF 20111116I1
Release Location (lon,lat,alt): 072 12.04'E, 08 11.50'S, 72.201, -8.192, 966.4
UTC Release Time (y,m,d,h,m,s): 2011, 11, 16, 04:22:07
Reference Launch Data Source/Time: IWGADTS Format (IWG1)/04:22:07
Sonde Id: 110355308
System Operator/Comments: TMR/none, Good Drop
Post Processing Comments: Aspen Version 3.1; Created on 01 Feb 2012 23:18 UTC; Configuration research-dropsonde
/
/
Nominal Release Time (y,m,d,h,m,s):2011, 11, 16, 04:22:07
Time Press Temp Dewpt RH Ucmp Vcmp spd dir Wcmp Lon Lat Ele Azi Alt Qp Qt Qrh Qu Qv QdZ
sec mb C C % m/s m/s m/s deg m/s deg deg deg deg m code code code code code code
------ ------ ----- ----- ----- ------ ------ ----- ----- ----- -------- ------- ----- ----- ------- ---- ---- ---- ---- ---- ----
89.8 1011.6 27.3 23.9 81.0 9999.0 9999.0 999.0 999.0 999.0 9999.000 999.000 999.0 999.0 0.0 1.0 1.0 1.0 9.0 9.0 9.0
【问题讨论】:
-
当新对象出现时,
Data Type:是否始终存在?数字行中的值的数量是恒定的吗? -
@duhaime 是的,
Data Type:始终存在,但有时后面会跟着一个字符串。行数应该是恒定的。我没有检查整个文件,因为它相当大。 -
在这种情况下,我会将每一行读入内存,然后如果该行以
Data Type:开头,我会说我现在正在处理一个新文件 -
@duhaime 感谢您的建议!我正在尝试使用布尔标志进行类似的操作,但也试图挑出一些头脑并跳出框框思考。
标签: python file csv genfromtxt