La reindexación en Pandas se puede usar para cambiar el índice de filas y columnas en un DataFrame. Los índices se pueden usar con referencia a múltiples índices de DataStructure asociados con múltiples series panda o panda DataFrame. Veamos cómo podemos reindexar columnas y filas en un Pandas DataFrame.
Reindexar filas
Puedes reindexar una o más filas usando reindex()
. Los valores predeterminados ‚Äã‚Äãen el nuevo índice que no están en el marco de datos se asignan NaN.
Ejemplo # 1:
# importar módulo numpy y pandas
importar
pandas como pd
import
numpy as np
columna = [ `a ` , ` b` , `c` , ` d` , `e` ]
índice = [ `A` , ` B` , `C ` , ` D` , `E` ]
# crear un marco de datos de valores de matriz aleatorios ​​
df1
=
pd.DataFrame (np.random.rand ( 5 , < /código> 5 ),
columnas = columna, índice = índice )
print
(df1)
print
(
`Dataframe after reindexing rows:`
< código clase = "simple">,
df1.reindex ([ `B` , ` D` , ` A` , `C` , `E` ]))
Salida :

Ejemplo n.º 2:
# importar módulos numpy y pandas
import
pandas as pd
import
numpy como np
columna = [ < código clase = "cadena"> `a` , ` b` , `c` , ` d` , `e`
]
índice
=
[
`A`
, `B` , ` C` , `D` , ` E ` ]
# crear datos fr nombre de valores de matriz aleatorios ​​
df1
=
pd.DataFrame (np.random.rand (
5 , 5 ),
columnas
=
columna, índice
=
índice )
# crear un nuevo índice para filas
nuevo_índice = [ `U` , < clase de código ="cadena ">` A` , `B` , ` C` , `Z ` ]
print
(df1.reindex (nuevo_índice))
Salida:

Reindexación de columnas usando la palabra clave axis
Es posible reindexar una columna o varias columnas usando reindex()
y especificando el eje
que queremos reindexar. Los valores predeterminados ‚Äã‚Äãen el nuevo índice que no están en el marco de datos se asignan NaN.
Ejemplo # 1:
# importar módulo numpy y pandas
importar
pandas como pd
import
numpy as np
columna = [ `a ` , ` b` , `c` , ` d` , `e` ]
índice = [ `A` , ` B` , `C ` , ` D` , `E` ]
# crear un marco de datos de valores de matriz aleatorios ​​
df1
=
pd.DataFrame (np.random.rand ( 5 , < /código> 5 ),
columnas = columna, índice = índice )
colum
=
[ `e` , ` a`
, `b` , `c` , ` d` ]
# crear un nuevo índice para las columnas
imprimir
(df1.reindex (columna, eje = ` columnas` ))
Salida:

Ejemplo # 2:
# import numpy and pandas module
importar pandas como pd importar numpy as np
columna = [ `a` , `b` , ` c` , ` d` , `e` ]
índice = [ `A` , ` B` , < /código> `C` , ` D` , `E` ]
# crear un marco de datos de valores de matriz aleatorios ‚Äã‚Äã df1 < clase de código = "palabra clave"> = pd.DataFrame (np.random.rand ( 5 , 5 ),
columnas = columna, índice = índice)
columna = [ `a` , ` b` , `c` , ` g` , ` h` ]
# crear un nuevo índice para las columnas
imprimir (df1.reindex (columna, eje) = `columnas` ))
|
Resultado:

Reemplazo de valores faltantes ​​
Código n.º 1: Puede completar los valores faltantes ‚Äã‚Äãde un marco de datos pasando un valor a la palabra clave fill_value
. Esta palabra clave reemplaza los valores de NaN.
# import numpy and pandas module
importar pandas como pd
importar numpy como np
columna
=
[
` a`
,
`b`
, ` c` , ` d` , ` e` ]
índice = [ ` A` , `B` , ` C` , `D` , ` E`
]
# crear un marco de datos de valores de matriz aleatorios ​​
df1
= pd.DataFrame (np.random.rand ( 5 , 5 ),
columnas = columna, índice = índice)
columna = [ `a` , ` b` , `c` , `g` < /código> , `h` ]
# crear un nuevo índice para las columnas
imprimir (df1.reindex (columna, eje = `columnas`
, valor_de_relleno = 1.5 ))
Salida:

Código n.º 2: Reemplace los datos faltantes con una cadena.
# importar módulo numpy y pandas
import
pandas como pd
import
numpy as np
columna
=
[
`a` , ` b` , ` c` , ` d` , `e` ]
índice = [ `A` , `B` , < clase de código ="cadena ">` C` , `D` , `E` ]
# crear un marco de datos de valores de matriz aleatorios ​​
df1
=
pd.DataFrame (np.random.rand (
5
, 5 ),
columnas = columna, índice = índice)
columna
=
[ `a` , `b` , ` c` , ` g` , `h` ]
# crear un nuevo índice para las columnas
print (df1.reindex (columna, eje = `columnas` , fill_value = ` datos falta` ))
Salida:
