我有一个具有以下结构的文件(第一行是标题,文件名是test.dat
):
ID_OBS LAT LON ALT TP TO LT_min LT_max STATIONNAME
ALT_NOA_000 82.45 -62.52 210.0 FM 0 0.0 24.0 Alert, Nunavut, Canada
如何指示pandas将整个站点名称(在本例中,Alert,Nunavut,Canada)作为一个单个元素来读取?我在代码中使用delim_whitespace=True
,但这行不通,因为电台名称包含空格字符。在
运行:
^{pr2}$产生:
ID_OBS LAT LON ALT TP TO LT_min LT_max STATIONNAME
ALT_NOA_000 82.45 -62.52 210.0 FM 0 0.0 24.0 Alert, Nunavut, Canada
快速阅读教程没有帮助。我错过了什么?在
粘贴的示例文件有点含糊不清:例如,无法通过肉眼判断看起来像几个空格的内容是否是制表符。在
不过,一般来说,请注意,普通的老Python比Pandas或CSV模块(Pandas的优势是elsewhere)更具表现力。E、 g.甚至还有用于递归下降解析器的Python模块,这显然是Pandas所缺少的。您可以使用常规Python将文件处理成更容易解析的形式。例如:
^{1}$将分隔符更改为
'@'
,例如,如果您写回一个文件,则可以使用delimiter='@'
进行解析。在我经常通过编写自己的小解析器来处理这些问题。一般来说,有一些方法可以让熊猫顺从你的意愿,但我发现这种方法通常更容易:
代码:
^{1}$结果:
^{pr2}$相关问题 更多 >
编程相关推荐