在pandas中读取没有标题的制表符分隔数据

时间:2014-07-05 01:58:51

标签: python pandas dataframe tab-delimited

我在使用pandas打开没有标题的制表符分隔数据时遇到问题。

我的测试数据(实际上包含200行,其中我显示的是前10行):

Tag19184    CTAAC   hffef   1   a   36  -   chr1    10006   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10012   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10018   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10024   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10030   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10036   0   36M 36
Tag19184    CTAAC   hffef   1   a   36  -   chr1    10042   0   36M 36
Tag20198    CTAAC   hffef   1   a   36  -   chr1    10048   0   36M 36
Tag20198    CTAAC   hffef   1   a   36  -   chr1    10054   0   36M 36
Tag45093    CTAAC   hffef   1   a   36  -   chr1    10060   0   36M 36

我的代码:

import pandas as pd
df = pd.read_csv('in_test.txt',sep='\t',header=None)
print df

但是,我得到以下输出,我不认为我可以用来进一步处理数据(?):

<class 'pandas.core.frame.DataFrame'>
Int64Index: 200 entries, 0 to 199
Data columns:
X.1     200  non-null values
X.2     200  non-null values
X.3     200  non-null values
X.4     200  non-null values
X.5     200  non-null values
X.6     200  non-null values
X.7     200  non-null values
X.8     200  non-null values
X.9     200  non-null values
X.10    200  non-null values
X.11    200  non-null values
X.12    200  non-null values
dtypes: int64(5), object(7)

tutorial here表明print df应该只给我相应的数据框。我做错了什么?

1 个答案:

答案 0 :(得分:2)

我认为你正确地阅读了它,但是:

  1. 请参阅:change pandas 0.13.0 "print dataframe" to print dataframe like in earlier versions,这是大熊猫在旧版本中的作用。所以,更新将解决它。
  2. 您可以使用ipython notebook,其中DataFrames将显示为HTML表格。
  3. 您可以使用df.head(5)(类似于r的{​​{1}})获取前几行,以确保您的head正确无误。