Переиндексацию в Pandas можно использовать для изменения индекса строк и столбцов в DataFrame. Индексы можно использовать со ссылкой на несколько индексов DataStructure, связанных с несколькими сериями panda или panda DataFrame. Давайте посмотрим, как мы можем переиндексировать столбцы и строки в Pandas DataFrame.
Переиндексировать строки
Вы можете переиндексировать одну или несколько строк, используя reindex()
. Значения по умолчанию в новом индексе, которых нет во фрейме данных, назначаются NaN.
Пример № 1:
# import numpy and pandas module
import
pandas как pd
import
numpy as np
столбец
=
[
`a `
,
` b`
,
`c`
,
` d`
,
`e`
]
index
=
[
`A`
` B`
,
`C `
,
` D`
,
`E`
]
# создать фрейм данных случайных значений массива ‚Äã‚Äã
df1
=
pd.DataFrame (np.random.rand (
5
,
5
),
столбцы
=
столбец, индекс
=
индекс )
print
(df1)
print
(
`Кадр данных после переиндексации строк:`
,
df1.reindex ([
`B`
,
` D`
,
` A`
,
`C`
,
`E`
]))
Вывод :
Пример № 2:
# импортировать модули numpy и pandas
import
pandas as pd
import
numpy как np
столбец
=
[
`a`
,
` b`
,
`c`
,
` d`
,
`e`
]
index
=
[
`A`
,
`B`
,
` C`
,
`D`
,
` E `
]
# создать данные для имя случайных значений массива ‚Äã‚Äã
df1
=
pd.DataFrame (np.random.rand (
5
,
5
),
столбцы
=
столбец, индекс
=
index )
# создайте новый индекс для строк
new_index
=
[
`U`
,
` A`
,
`B`
,
` C`
,
`Z `
]
print
(df1.reindex (new_index))
Вывод:
Переиндексация столбцов с использованием ключевого слова axis
Можно переиндексировать один или несколько столбцов столбцы, используя reindex()
и указав ось
, которую мы хотим переиндексировать. Значения по умолчанию в новом индексе, которых нет во фрейме данных, назначаются NaN.
Пример № 1:
# import numpy and pandas module
import
pandas как pd
import
numpy as np
столбец
=
[
`a `
,
` b`
,
`c`
,
` d`
,
`e`
]
index
=
[
`A`
` B`
,
`C `
,
` D`
,
`E`
]
# создать фрейм данных случайных значений массива ‚Äã‚Äã
df1
=
pd.DataFrame (np.random.rand (
5
,
5
),
столбцы
=
столбец, индекс
=
индекс )
столбец
=
[
`e`
,
` a`
,
`b`
,
`c`
,
` d`
]
# создайте новый индекс для столбцов
print
(df1.reindex (столбец, ось
=
` столбцы`
))
Вывод:
Пример № 2:
<код class ="keyword"> import
|
Вывод:
Замена отсутствующих значений ‚Äã‚Äã
Код № 1: вы можете заполнить отсутствующие значения ‚Äã‚Äãиз фрейма данных, передав значение ключевому слову fill_value
. Это ключевое слово заменяет значения NaN.
# import numpy and pandas module
импортировать
pandas as pd
import
numpy as np
столбец
=
[
` a`
,
`b`
,
` c`
,
` d`
,
` e`
]
index
=
[
` A`
,
`B`
,
` C`
,
`D`
,
` E`
]
# создать фрейм данных случайных значений массива ‚Äã‚Äã
df1
=
pd.DataFrame (np.random.rand (
5
,
5
) ,
столбцы
=
столбец, индекс
=
index)
столбец
=
[
`a`
,
` b`
,
`c`
,
`g`
,
`h`
]
# создайте новый индекс для столбцов
print
(df1.reindex (столбец, ось
=
`columns`
, fill_value
=
1.5
))
Вывод:
Код № 2: Замените отсутствующие данные строкой.
# импортировать модуль numpy и pandas
import
pandas as pd
import
numpy as np
столбец
=
[
`a`
,
` b`
,
` c`
,
` d`
,
`e`
]
index
=
[
`A`
,
`B`
,
` C`
,
`D`
, <класс кода = "string"> `E`
]
# создать фрейм данных случайных значений массива ‚Äã‚Äã
df1
=
pd.DataFrame (np.random.rand (
5
,
5
),
столбцы
=
столбец, индекс
=
index)
столбец
=
[
`a`
,
`b`
,
` c`
,
`g`
,
`h`
]
# создать новый индекс для столбцов
print
(df1.reindex (столбец, ось
=
`columns`
, fill_value
=
` данные отсутствует`
))
Вывод: