logo

Python | Pandas.pivot()

pandas.pivot(indeksas, stulpeliai, reikšmės) funkcija sukuria suvestinę lentelę, pagrįstą 3 DataFrame stulpeliais. Naudoja unikalias reikšmes iš indekso / stulpelių ir užpildo jas reikšmėmis.

Python Pandas.pivot() Sintaksė

Sintaksė : pandas.pivot(indeksas, stulpeliai, reikšmės)



Parametrai:

  1. indeksas[ndarray]: Etiketės, naudojamos kuriant naują kadro indeksą
  2. stulpeliai [ndarray] : Etiketės, naudojamos kuriant naujus rėmelio stulpelius
  3. reikšmės[ndarray]: Reikšmės, naudojamos naujų kadrų reikšmėms užpildyti

Grąžinimai: Pertvarkyta DataFrame
Išimtis: Jei yra dublikatų, iškelta „ValueError“.

Pavyzdinio duomenų rėmelio kūrimas

Čia pateikiame pavyzdį „DataFrame“, kurį naudosime savo straipsnyje.



Python3






# importing pandas as pd> import> pandas as pd> > # creating a dataframe> df>=> pd.DataFrame({>'A'>: [>'John'>,>'Boby'>,>'Mina'>],> >'B'>: [>'Masters'>,>'Graduate'>,>'Graduate'>],> >'C'>: [>27>,>23>,>21>]})> > df>

java pabaiga
>

>

Išvestis

 A B C 0 John Masters 27 1 Boby Graduate 23 2 Mina Graduate 21>

Pandos pivot() Funkcijų pavyzdžiai

Toliau pateikiami keli pavyzdžiai, pagal kuriuos galime pasukti „DataFrame“ naudodami Pandos pivot() funkcija in Python :

  • Kuriant ir Sukite „DataFrame“.
  • Kelių lygių suvestinės lentelės kūrimas naudojant Pandas DataFrame
  • ValueError sukdami duomenų rėmelį

Kuriant ir Sukite „DataFrame“.

Šiame pavyzdyje pandos duomenų rėmelis (df>). Funkcija daro prielaidą, kad kiekvienas „A“ ir „B“ derinys turi unikalią atitinkamą reikšmę „C“.

Python3

apibrėžti kompiuterį




# values can be an object or a list> df.pivot(>'A'>,>'B'>,>'C'>)>

>

>

Išvestis

B Graduate Masters A Boby 23.0 NaN John NaN 27.0 Mina 21.0 NaN>

Kelių lygių suvestinės lentelės sukūrimas naudojant Pandas DataFrame

Šiame pavyzdyje pandos DataFrame (df>). Šis metodas leidžia detaliau pateikti duomenis, įtraukiant kelis matmenis į gautą suvestinę lentelę.

Python3


java palyginimas



# value is a list> df.pivot(index>=>'A'>, columns>=>'B'>, values>=>[>'C'>,>'A'>])>

>

>

Išvestis

 C A B Graduate Masters Graduate Masters A Boby 23.0 NaN NaN NaN John NaN 27.0 NaN NaN Mina 21.0 NaN NaN NaN>

Sukant duomenų rėmelį iškilo vertės klaida

Padidinkite ValueError, kai yra indeksų, stulpelių deriniai su keliomis reikšmėmis.

Python3

įdėti į klaviatūrą




# importing pandas as pd> import> pandas as pd> > # creating a dataframe> df>=> pd.DataFrame({>'A'>: [>'John'>,>'John'>,>'Mina'>],> >'B'>: [>'Masters'>,>'Masters'>,>'Graduate'>],> >'C'>: [>27>,>23>,>21>]})> > > df.pivot(>'A'>,>'B'>,>'C'>)>

>

>

Išvestis

ValueError: Index contains duplicate entries, cannot reshape>