Utilizzando panda 0.11 su Python 2.7.3 Sto cercando di ruotare un semplice dataframe con i seguenti valori:ReshapeError durante il tentativo di ruotare i panda dataframe
StudentID QuestionID Answer DateRecorded
0 1234 bar a 2012/01/21
1 1234 foo c 2012/01/22
2 4321 bop a 2012/01/22
3 5678 bar a 2012/01/24
4 8765 baz b 2012/02/13
5 4321 baz b 2012/02/15
6 8765 bop b 2012/02/16
7 5678 bop c 2012/03/15
8 5678 foo a 2012/04/01
9 1234 baz b 2012/04/11
10 8765 bar a 2012/05/03
11 4321 bar a 2012/05/04
12 5678 baz c 2012/06/01
13 1234 bar b 2012/11/01
Sto usando il seguente comando:
df.pivot(index='StudentID', columns='QuestionID')
Ma sto ottenendo il seguente errore:
ReshapeError: Index contains duplicate entries, cannot reshape
Si noti che lo stesso dataframe senza l'ultima lin e
13 1234 bar b 2012/11/01
I risultati perno con successo in seguito:
Answer DateRecorded
QuestionID bar baz bop foo bar baz bop foo
StudentID
1234 a b NaN c 2012/01/21 2012/04/11 NaN 2012/01/22
4321 a b a NaN 2012/05/04 2012/02/15 2012/01/22 NaN
5678 a c c a 2012/01/24 2012/06/01 2012/03/15 2012/04/01
8765 a b b NaN 2012/05/03 2012/02/13 2012/02/16 NaN
Sono nuovo di rotazione e vorrei sapere perché avere StudentID duplicato, QuestionID paio causa questo problema? E come posso risolvere questo problema usando la funzione df.pivot()?
grazie.
Ho già provato questi: http://stackoverflow.com/questions/13216087/pandas-dataframe-pivoting-issue, http://stackoverflow.com/questions/11232275/pandas-pivot-warning-about -repeated-entries-on-index e http://stackoverflow.com/questions/13216087/pandas-dataframe-pivoting-issue. Ma il problema c'è ancora. Inoltre, non voglio un dataframe MultiIndexed eccessivamente complicato nel risultato. – iqbalnaved