Ho un set di file delimitati da tabulazioni che devo leggere, li uso come dataframe panda, eseguo su di essi un intero gruppo di operazioni e li unisco a un file excel, il codice è troppo lungo così ho intenzione di passare attraverso la parte problematica di essoe profondità di lexsort MultiIndex
I file scheda che sto parsing contiene tutte lo stesso numero di righe 2177
Quando ho letto questi file mi indicizzazione da parte del prime 2 colonne di tipo (stringa, int)
df = df.set_index(['id', 'coord'])
data = OrderedDict()
#data will contain all the information I am writing to excel
data[filename_id] = df
one o f procedure sto facendo esigenze accedere a ciascuna riga di dati [ID Campione] che contiene dataframe di tipi misti indicizzati con le colonne 'id' e 'Coord', simili
sample_row = data[sample].ix[index]
mio indice essendo ('id' , 'coord')
Se io sto curando un sottoinsieme del file tutto funziona grande, ma se leggo l'intero file con 2177 linee finisco per avere questo messaggio di errore
KeyError: 'Key length (2) was greater than MultiIndex lexsort depth (0)'
ho cercato su SO e ovunque e sembra che questo è un problema di ordinare l'indice, ma non capisco perché noi un sottoinsieme non ordinato non causa il problema
Qualche idea su come posso risolvere questo problema?
Grazie
Grazie Jeff, beh lo so e leggo il documento ma il problema è che sta accadendo solo per dataframe più grande di 1000 righe che trovo strano! – Rad
Ho risolto il mio problema semplicemente facendo sort_index() – Rad
Il collegamento a quell'ancora specifica per i documenti non funziona più, potresti fare riferimento a [questo] (http://pandas.pydata.org/pandas-docs/ stable/indexing.html # slicing-with-labels). – Akronix