Как установить значение определенной ячейки в pandas dataframe


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

 #set value at row index 0 and column 'col_name' to be 99
df. at [0, ' col_name '] = 99

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

	points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Пример 1. Установите значение ячейки в Pandas

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

 #set value in 3rd index position and 'points' column to be 99
df. at [3, ' points '] = 99

#view updated DataFrame
df

        points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 99 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Обратите внимание, что значение в 3-й позиции индекса столбца «точки» было изменено, а все остальные значения в DataFrame остались прежними.

Пример 2. Установите значение нескольких ячеек в Pandas

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

 #set values in index positions 0 to 3 in 'points' column to be 99 
df. at [0:3, ' points '] = 99

#view updated DataFrame
df

points assists rebounds
0 99 5 11
1 99 7 8
2 99 7 10
3 99 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Пример 3: Условная установка значений в Pandas

Следующий код показывает, как установить значения в столбце «отскоки» на 99 , только если значение в столбце «очки» больше 20:

 #set values in 'rebounds' column to be 99 if value in points column is greater than 20
df. loc [df[' points ']>20, [' rebounds ']] = 99

#view updated DataFrame
df

points assists rebounds
0 25 5 99
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 99
6 25 9 99
7 29 4 99

Обратите внимание, что каждое значение в столбце подборов было изменено на 99, если значение в столбце очков было больше 20.

Все остальные значения остались прежними.

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

В следующих руководствах объясняется, как выполнять другие распространенные функции в pandas:

Как получить значение ячейки из Pandas DataFrame
Как получить первую строку Pandas DataFrame
Как получить первый столбец из Pandas DataFrame
Как получить индекс строк, столбец которых соответствует значению в Pandas

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *