Pandas Reindex

Pandas Reindex



»V »pandah« lahko shranimo veliko informacij v obliki tabele, ki je znana tudi kot DataFrame. »Pande« nam pomagajo z metodo »DataFrame()« za konstrukcijo DataFrame. DataFrame vsebuje indekse, indekse DataFrame pa lahko spreminjamo tudi z uporabo funkcij »pandas«. Metoda, ki jo uporabljamo za ponovno indeksiranje DataFrame, je metoda »reindex()«. Ta metoda pomaga pri spreminjanju vrednosti indeksa vrstice in vrednosti indeksa stolpcev. Z uporabo te metode lahko spremenimo privzeti indeks DataFrame, prav tako pa lahko spremenimo indeks, ki smo ga nastavili med ustvarjanjem DataFrame. Uporabili bomo metodo »reindex()« v naših primerih »pand« v tej vadnici in bomo tukaj poglobljeno razložili ta koncept.«

Primer št. 01

Orodje »Spyder« nam pomaga pri razvijanju kode »pandas« tukaj v tej vadnici, našo kodo pa začnemo s ključno besedo »import«, ki bo pomagala pri uvozu funkcije »pandas«. Po vpisu »uvozi« postavimo »pande kot pd«. Po tem ustvarimo DataFrame tako, da vnesemo “pd.DataFrame()”. Tukaj pišemo ta »pd«, ker je »DataFrame()« metoda »pand«. “value_df” je ime spremenljivke, v kateri je shranjen DataFrame. Dodamo »Naključno ime«, ki je ime stolpca, »Naključno ime« pa vsebuje »Thomas, Oscar, Lilly, Rowan, John, Bromley, Peter, Alexander in Samuel«.







Nato imamo »Vrednost_1«, v katero smo vstavili »16, 29, 24, 35, 44, 50, 69, 74 in 88«. Nato pride »Vrednost_2« in dodali smo »25, 38, 42, 56, 54, 65, 78, 89 in 99«. Zdaj sledi »Vrednost_3« in vanjo postavimo »36, 48, 52, 69, 74, 75, 87, 91 in 69«. Za tem je prisoten stolpec »Vrednost_4«, kamor smo vstavili »52, 64, 72, 88, 82, 95, 97, 21 in 39«. Zadnji stolpec je tukaj stolpec »Vrednost_5« in v tem stolpcu so vrednosti, ki smo jih dodali, »66, 78, 82, 99, 34, 45, 57, 61 in 89«. Po tem uporabimo funkcijo »print()«, v katero se doda »Values_df«. Natisnil se bo na terminalu.




Po pritisku na “Shift+Enter” lahko enostavno dobimo rezultat naših kod v aplikaciji “Spyder”. Tukaj ta koda vrne DataFrame s privzetim indeksom. Zdaj bomo uporabili metodo »reindex()« za ponovno indeksiranje tega DataFrame v »pandah«.




Funkcija »reindex()« se tukaj uporablja za ponovno indeksiranje vrednosti indeksa vrstice. V zgornjem DataFrame lahko vidite, da so prikazane privzete vrednosti indeksa vrstice, zdaj pa uporabljamo metodo »reindex()« za ponovno indeksiranje teh indeksov vrstic. Postavimo ime DataFrame in nato metodo 'reindex()', v katero postavimo vrednosti indeksa, ki jih želimo dodati v zgornji DataFrame. V funkcijo »reindex()« postavimo »ind_A, ind_B, ind_C, ind_D, ind_E, ind_F, ind_G, ind_H in ind_I«. Torej bodo indeksi teh vrstic posodobljeni v DataFrame, ko bomo izvedli to kodo.






Vrednosti indeksa vrstice so prikazane v tem izidu in opazite lahko, da vrednosti DataFrame tukaj niso prikazane in so se pojavile vrednosti »NaN«. To je zato, ker se nove vrednosti indeksa ne ujemajo s prejšnjimi vrednostmi indeksa DataFrame. Ko se novi in ​​stari indeks ne ujemata, se tam prikaže »Nan«. Te vrednosti »NaN« se privzeto prikažejo, ko spremenimo indeks in se ne ujema s prejšnjim indeksom.



Primer št. 02

Zdaj spreminjamo vrednosti indeksa stolpca za »Value_df«, ki smo ga predhodno ustvarili v primeru 1. Po tiskanju »Value_df« smo vstavili spremenljivko »column« in ji dodali nekaj vrednosti. Dodamo »a_1, b_1, c_1, d_1 in e_1«. Zdaj želimo te vrednosti prilagoditi kot indeks stolpcev, zato za to uporabimo metodo »reindex()« in postavimo ime spremenljivke »column«, v katero so shranjene nove vrednosti indeksa stolpcev in nastavite tudi »os« na »stolpci«, tako da bo posodobil indeks osi stolpca. Metodo »reindex()« smo postavili v »print()«, tako da bo upodobljena tudi na terminalu.


Ker smo uporabili metodo »reindex()«, so vrednosti indeksa stolpcev, ki so prisotne v prvem DataFrame, posodobljene, nove vrednosti pa dodane v posodobljen DataFrame. Upoštevate lahko tudi, da so vse vrednosti DataFrame pretvorjene v »NaN«, ker sta obe vrednosti indeksa stolpcev različni.

Primer št. 03

»Programming_data« v tej kodi vsebuje »P_Languages«, kjer smo dodali »JavaScript, CSS, spletno inženirstvo, OOP, C#, AI, Java in JavaScript«. Nato imamo »Ure«, v katere postavimo »4_ur, 2_ur, 3_ur, 7_ur, 6_ur, 5_ur, 8_ur in 6_ur«. Po tem se vnese »P_Code« in vstavimo »11523, 12423, 12321, 11456, 11454, 12267, 13106 in 14123«. Dodamo spremenljivko 'p_index' in postavimo 'Pro_A, Pro_B, Pro_C, Pro_D, Pro_E, Pro_F, Pro_G in Pro_H'.

Te vrednosti bodo uporabljene kot indeksne vrednosti vrstic. Spremenimo “Programming_data” v “Programming_df” DataFrame. Temu DataFrame dodamo tudi »p_index« z uporabo metode »index«. Vstavimo »Programming_df« in nato metodo »index« ter temu dodelimo »p_index«. Zdaj so zgornje vrednosti indeksa dodane kot vrednosti indeksa vrstic v DataFrame. Natisnemo tudi »Programming_df«.

Po tem dodamo nekaj novih vrednosti indeksa v spremenljivko “new_index”, in to so “P_1, P_2, P_3, P_4, P_5, P_6, P_7 in P_8”. Ker želimo posodobiti vrednosti indeksa vrstic, uporabimo metodo »reindex()« in postavimo »new_index« kot parameter te funkcije ter shranimo posodobljen DataFrame v »newProgramming_df« in postavimo »newProgramming_df« v » print()« za prikaz.


Vrednosti indeksa so posodobljene in lahko tudi rečemo, da smo znova indeksirali DataFrame, ki smo ga ustvarili. Vse vrednosti DataFrame so prav tako pretvorjene v »NaN«, ker sta obe vrednosti indeksa različni.

Primer št. 04

Trenutno spreminjamo vrednosti indeksa 'Programming_df's' stolpcev, ki smo jih predhodno razvili v primeru 3. Postavimo spremenljivko 'column' in vanjo vstavimo nove vrednosti. Spremenljivki »stolpec« se dodajo »P_Code, P_Languages, Hours in New«. Nato ponovno uporabimo metodo »reindex()«, v kateri nastavimo spremenljivko »column«, ki bo posodobila prejšnje vrednosti indeksa stolpca in dodala te nove vrednosti indeksa stolpca v DataFrame.

Tukaj lahko opazite, da so nove vrednosti, ki smo jih dodali v »stolpec«, enake, kot smo jih dodali v zgornji DataFrame, vendar je zaporedje drugačno, tako da bo spremenilo zaporedje stolpcev in prilagodilo vse stolpce, ko bomo omenjeno v spremenljivki 'stolpec'. Prav tako dodamo še eno vrednost indeksa, ki ni prisotna v zgornjem DataFrame, ki je tukaj »Novo«, tako da bodo vrednosti »NaN« prikazane v tem stolpcu.


Zaporedje stolpcev je tukaj spremenjeno in vse vrednosti so prikazane tako, kot so prisotne v prvotnih stolpcih DataFrame, stolpec »Novo« v posodobljenem DataFrame pa vsebuje vse vrednosti »NaN«, ker tega stolpca ni v izvirnem DataFrameu.

Zaključek

Predstavili smo to vadnico, ki nam pomaga pri natančnem razumevanju pojma »ponovno indeksiranje pand«. Razpravljali smo o tem, kako lahko znova indeksiramo stolpec DataFrame in vrednosti indeksa vrstice. Pojasnili smo, da se za to uporablja funkcija »reindex()« za »pande«. Naredili smo različne primere, v katerih smo spremenili vrednosti indeksa vrstic DataFrame in tudi vrednosti indeksa indeksa stolpca DataFrame. Rezultate vseh kod, ki smo jih naredili tukaj, smo upodabljali v tej vadnici in jih tudi poglobljeno razložili.