1

是否可以使用基于列的标签读取缺少数据的表?我有下表:

                      Band                             Band                %  of
  Band   Peak         for                          %   for  Area           Total
   No.   Pos.   Delta Sep.  Separ.  Height  FWHM Gauss Area Ratio   Area   Area 
    4   214.01   4.67   3     2.70    5737  1.69   90    3   0.67   10836  30.76
    2   212.04   2.70   1     2.70    1391  2.10   90    1   0.67    3254   9.24
    3   211.31   1.97   0             8580  1.70   90    0          16255  46.14
    1   209.34   0.00   0             2193  2.00   90    0           4882  13.86

我想以基于列的方式阅读它。我相信pandas可以做到。我会跳过前两行——但是如何pandas以基于列的方式读取剩余的数据?

解析此类表(缺少数据)的任何其他解决方案也可以。

4

2 回答 2

4

哦,我设法做到了:

asciitable.read("1.txt", Reader=asciitable.FixedWidthNoHeader,
                col_starts=( 8, 16, 22, 28, 36, 44, 49, 55, 60, 67, 74),
                col_ends  =(14, 21, 25, 34, 42, 48, 53, 58, 65, 73, 80))

丢弃前三行。

编辑

正如DSM所指出的——同样可以通过以下方式实现pandas

pandas.read_fwf("1.txt", widths=[6, 8, 7, 5, 8, 8, 6, 6, 5, 6, 8, 7], skiprows=3)
于 2013-01-21T13:31:22.733 回答
0

关于什么:

import pandas as pd
pd.read_table('example.txt', skiprows=3, sep=r'\s*' )

如果中间只有空格,我认为它不会起作用,但如果没有样本数据就很难说。

于 2013-01-24T03:52:58.533 回答