我有一个包含14行标题的数据文件。在标题中,有纬度 - 经度坐标和时间的元数据。我目前正在使用
pandas.read_csv(filename, delimiter",", header=14)
读取文件,但这只是获取数据,我似乎无法获取元数据。有谁知道如何阅读标题中的信息?标题如下:
CSD,20160315SSIO
NUMBER_HEADERS = 11
EXPOCODE = 33RR20160208
SECT_ID = I08
STNBBR = 1
CASTNO = 1
DATE = 20160219
TIME = 0558
LATITUDE = -66.6027
LONGITUDE = 78.3815
DEPTH = 462
INSTRUMENT_ID = 0401
CTDPRS,CTDPRS_FLAG,CTDTMP,CTDTMP_FLAG
DBAR,,ITS-90,,PSS-78
答案 0 :(得分:1)
你必须自己解析你的元数据标题,但你可以在一次通过中以优雅的方式进行,甚至可以在运行中使用它,这样你就可以从中提取数据/控制文件的正确性等。
首先,自己打开文件:
f = open(filename)
然后,完成解析每个元数据行的工作以从中提取数据。为了便于解释,我只是跳过这些行:
for i in range(13): # skip the first 13 lines that are useless for the columns definition
f.readline() # use the resulting string for metadata extraction
现在,您已在要用于加载DataFrame的唯一标题行上准备好文件指针。很酷的是read_csv
接受文件对象!因此,您现在就开始加载DataFrame:
pandas.read_csv(f, sep=",")
请注意,我没有使用header参数,因为我在您的描述中考虑的是,您只有最后一行标题对您的数据帧有用。您可以构建和调整听众解析值/行以跳过该示例。
答案 1 :(得分:1)
虽然以下方法不使用Pandas,但我能够提取标题信息。
SimpleObject