如何将 .pos 文件导入为具有混合数据类型的 numpy 数组?



我对Python相当陌生,我正在使用.pos文件。它们并不常见,但我可以解释它们的结构。 有一个包含一般信息的标题,然后是包含数据的 15 个不同列。前两列包含 GPS 时间(第一列的日期和第二列的时间 - 标准格式 YYYY/MM/DD hh:mm:ss.ms(,然后有 3 列包含坐标或距离(以米为单位(,然后是其他列,这些列是其他测量值,始终是数字。这里可以找到一个例子,只注意我的GPST(GPS时间(如上所述。 事实上,此文件中有三种数据类型,即日期时间、整数和浮点数。

我需要在 Python 中将此文件作为数组导入。显然,Python 可以将 .pos 文件视为文本文件,因此我尝试使用loadtext((命令,指定不同的数据类型(datetime64、int、float(。但是,它给了我一个错误,说无法识别日期格式。然后,我尝试使用命令genfromtext((,既指定数据类型,又使用dtype=None。在第一种情况下,我得到了日期和时间的空列,在后一种情况下,我得到了日期和时间作为字符串

我希望日期和时间被识别为这样,而不是字符串,因为我稍后将需要它进行进一步分析。有人对如何正确导入此文件有想法吗?

请尽量清楚,因为我是一个新手程序员!

谢谢你的帮助。

我回答我自己的问题,也许这对某人有用。

.pos文件可以使用Pandas软件包打开,如下所示:

import pandas as pd
df = pd.read_table(filepath, sep='s+', parse_dates={'Timestamp': [0, 1]})

在我的数据中,前两列是日期和时间,参数">parse_dates={'时间戳':[0, 1]}"认为是这样

我使用py 脚本将 POS 文件转换为 csv(我可以与您分享(,然后我使用 Pandas 包进行数据操作

最新更新