2014-07-05 3 views
6

Ho problemi nell'utilizzo di pandas per aprire dati delimitati da tabulazioni senza intestazioni.lettura dati delimitati da tabulazione senza intestazioni nei panda

miei dati di test (in realtà contiene 200 linee, di cui sto mostrando i primi 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 

Il mio codice:

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

Tuttavia, ottengo il seguente output, che ho non credo che posso usare per altri dati di processo (?):

<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) 

Il tutorial here suggerisce che print df dovrei solo darmi la cornice dati corrispondente. Che cosa sto facendo di sbagliato?

risposta

2

penso che si stanno ottenendo il che leggere correttamente, ma:

  1. See: change pandas 0.13.0 "print dataframe" to print dataframe like in earlier versions, questo è ciò che i panda fanno nelle versioni precedenti. Quindi, l'aggiornamento lo risolverà.
  2. È possibile utilizzare ipython notebook, dove DataFrames verrà visualizzato come tabelle HTML.
  3. È possibile utilizzare df.head(5) (simile a r s' head) per ottenere la prima di una qualche fila solo per assicurarsi che il vostro DataFrame è corretta.
+0

Grazie ancora. Sto ricevendo lo stesso tipo di sommario, questa volta con valori di '5' anziché di' 200'^- ^) ;;; fammi provare ancora – biohazard

+0

Devi utilizzare una versione precedente, consulta questo post: http://stackoverflow.com/questions/21482546/change-pandas-0-13-0-print-dataframe-to-print-dataframe- like-in-before-version –

+0

Ho provato entrambi i link StackOverflow ma invariabilmente mi dà un errore del tipo AttributeError: l'oggetto 'module' non ha attributo 'options' o 'has no attribute set_option'. Ho installato 'python-pandas' usando' apt-get install', che ho appena capito, installa solo una versione molto vecchia: 'pandas .__ version__ = 0.7.0'. Tornerò al tuo post dopo aver capito come aggiornarlo. :) – biohazard