Как заменить значения в кадре данных Pandas (с примерами)


Часто вам может понадобиться заменить значения в одном или нескольких столбцах кадра данных pandas.

К счастью, это легко сделать с помощью функции .replace() .

В этом руководстве представлено несколько примеров практического использования этой функции в следующем кадре данных:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'B', 'B', 'B', 'C', 'C'],
 'division':['E', 'W', 'E', 'E', 'W', 'W', 'E'],
 'rebounds': [11, 8, 7, 6, 6, 5, 12]})

#view DataFrame
print(df)

 team division rebounds
0 A E 11
1 A W 8
2 B E 7
3 B E 6
4 B W 6
5 C W 5
6 C E 12

Пример 1: замена одного значения во всем фрейме данных

В следующем коде показано, как заменить одно значение во всем DataFrame pandas:

#replace 'E' with 'East'
df = df.replace(['E'],' East')

#view DataFrame
print(df)

 team division rebounds
0 A East 11
1 A W 8
2 B East 7
3 B East 6
4 B W 6
5 C W 5
6 C East 12

Пример 2: замена нескольких значений во всем фрейме данных

В следующем коде показано, как заменить несколько значений во всем кадре данных pandas:

#replace 'E' with 'East' and 'W' with 'West'
df = df.replace(['E', 'W'],['East', 'West'])

#view DataFrame
print(df)

 team division rebounds
0 A East 11
1 A West 8
2 B East 7
3 B East 6
4 B West 6
5 C West 5
6 C East 12

Пример 3. Замена одного значения в одном столбце

В следующем коде показано, как заменить одно значение в одном столбце:

#replace 6 with 0 in *rebounds* column
df['rebounds'] = df['rebounds']. replace (6, 0)

#view DataFrame
print(df)

 team division rebounds
0 A E 11
1 A W 8
2 B E 7
3 B E 0
4 B W 0
5 C W 5
6 C E 12

Пример 4. Замена нескольких значений в одном столбце

Следующий код показывает, как заменить несколько значений в одном столбце:

#replace 6, 11, and 8 with 0, 1 and 2 in *rebounds* column
df['rebounds'] = df['rebounds']. replace([6, 11, 8], [0, 1, 2])

#view DataFrame
print(df)

team division rebounds
0 A E 1
1 A W 2
2 B E 7
3 B E 0
4 B W 0
5 C W 5
6 C E 12

Дополнительные ресурсы

Как заменить значения NaN нулями в Pandas
Как переименовать столбцы в Pandas
Как получить номера строк в Pandas