Funzione Pandas DataFrame DataFrame.reindex()
-
Sintassi di
pandas.DataFrame.reindex()
-
Codici di esempio:
DataFrame.reindex()
-
Codici di esempio:
DataFrame.reindex()
per reindicizzare le colonne -
Codici di esempio:
DataFrame.reindex()
Metodo per riempire i valori mancanti confill_value
-
Codici di esempio:
DataFrame.reindex()
per riempire i valori mancanti utilizzando il parametrometodo
La funzione Python Pandas DataFrame.reindex()
cambia l’indice di un DataFrame
. Cambia gli indici sull’asse specificato. I nuovi indici non contengono valori. Fornisce parametri opzionali per inserire questi valori.
Sintassi di pandas.DataFrame.reindex()
DataFrame.dropna(
labels, index, columns, axis, method, copy, level, fill_value, limit, tolerance
)
Parametri
labels |
È una struttura tipo array che contiene i nomi dei nuovi indici. |
index, columns |
È una struttura tipo array che contiene i nomi dei nuovi indici. Dovrebbe essere specificato utilizzando la parola chiave index o coloumns . |
axis |
È un numero intero o una stringa. Specifica l’asse di destinazione righe o colonne. Può essere 0 o 'index' e 1 o "coloumns" . |
method |
Questo parametro specifica il metodo per riempire i valori mancanti nel DataFrame reindicizzato. Ha quattro possibilità: None , backfill / bfill , pad / ffill , nearest . Si applica solo se il nostro DataFrame o Series ha una sequenza di un indice crescente o decrescente. |
copy |
Booleano . Per impostazione predefinita, è True . Restituisce un nuovo oggetto. |
level |
È un numero intero o un nome. Corrisponde ai valori di indice su un livello multiindice passato. |
fill_value |
Ha un valore scalare. È il valore per riempire i valori mancanti. |
limit |
È un numero intero. Specifica il limite degli elementi consecutivi riempiendo i valori mancanti. |
tolerance |
Specifica la differenza tra l’originale e le nuove etichette in caso di corrispondenze inesatte. |
Ritorno
Restituisce un DataFrame
con gli indici modificati.
Codici di esempio: DataFrame.reindex()
Per impostazione predefinita, l’asse è 0
, ovvero le righe, quindi le righe verranno reindicizzate.
import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 75, 4: 95},
'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
'Obtained Marks': {0: 56, 1: 75, 2: 82, 3: 64, 4: 67}})
print(dataframe)
Il dataframe demo è il seguente.
Attendance Name Obtained Marks
0 60 Olivia 56
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
Gli indici in Python iniziano da 0. Reindicizzeremo il nostro DataFrame
ei nuovi indici partiranno da 1.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5])
print(dataframe1)
Produzione:
Attendance Name Obtained Marks
1 100.0 John 75.0
2 80.0 Laura 82.0
3 75.0 Ben 64.0
4 95.0 Kevin 67.0
5 NaN NaN NaN
Qui, 5 è un nuovo indice. Quindi, i valori del nuovo indice sono NaN
.
Codici di esempio: DataFrame.reindex()
per reindicizzare le colonne
Esistono due modi per reindicizzare le colonne. Uno è specificando le etichette con la parola chiave columns
e l’altro è utilizzando il parametro dell’asse. La cosa migliore è specificare le etichette con la parola chiave columns
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex(columns=["Presents", "Name", "Marks"])
print(dataframe1)
Produzione:
Presents Name Marks
0 NaN Olivia NaN
1 NaN John NaN
2 NaN Laura NaN
3 NaN Ben NaN
4 NaN Kevin NaN
Il vecchio indice viene assegnato con i vecchi valori. I nuovi indici hanno valori NaN
.
Potremmo anche reindicizzare le colonne con il parametro axis
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex(["Presents", "Name", "Marks"], axis="columns")
print(dataframe1)
Codici di esempio: DataFrame.reindex()
Metodo per riempire i valori mancanti con fill_value
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], fill_value=0)
print(dataframe1)
Produzione:
Attendance Name Obtained Marks
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
5 0 0 0
I valori mancanti sono ora riempiti con 0.
Codici di esempio: DataFrame.reindex()
per riempire i valori mancanti utilizzando il parametro metodo
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], method="ffill")
print(dataframe1)
Produzione:
Attendance Name Obtained Marks
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
5 95 Kevin 67
Il metodo ffill
ha riempito i valori mancanti in avanti con l’ultimo valore disponibile.