python读取dat数据_使用Pandas读取数据(.dat文件)

您可以使用带有列顺序的参数usecols:

import pandas as pd

from pandas.compat import StringIO

temp=u"""TIME XGSM

2004 006 01 00 01 37 600 1

2004 006 01 00 02 32 800 5

2004 006 01 00 03 28 000 8

2004 006 01 00 04 23 200 11

2004 006 01 00 05 18 400 17"""

#after testing replace StringIO(temp) to filename

df = pd.read_csv(StringIO(temp),

sep="\s+",

skiprows=1,

usecols=[0,7],

names=['TIME','XGSM'])

print (df)

TIME XGSM

0 2004 1

1 2004 5

2 2004 8

3 2004 11

4 2004 17

编辑:

您可以使用分隔符regex - 2个或更多空格,然后添加engine='python',因为警告:

ParserWarning:回归' python'引擎,因为' c'引擎不支持正则表达式分隔符(分隔符> 1个字符,不同于' \ s +'被解释为正则表达式);您可以通过指定engine =' python'。来避免此警告

import pandas as pd

from pandas.compat import StringIO

temp=u"""TIME XGSM

2004 006 01 00 01 37 600 1

2004 006 01 00 02 32 800 5

2004 006 01 00 03 28 000 8

2004 006 01 00 04 23 200 11

2004 006 01 00 05 18 400 17"""

#after testing replace StringIO(temp) to filename

df = pd.read_csv(StringIO(temp), sep=r'\s{2,}', engine='python')

print (df)

TIME XGSM

0 2004 006 01 00 01 37 600 1

1 2004 006 01 00 02 32 800 5

2 2004 006 01 00 03 28 000 8

3 2004 006 01 00 04 23 200 11

4 2004 006 01 00 05 18 400 17

你可能感兴趣的:(python读取dat数据)