Pandas: как добавить строку к каждому значению в столбце
Вы можете использовать следующие методы, чтобы добавить строку к каждому значению в столбце DataFrame pandas:
Способ 1. Добавьте строку к каждому значению в столбце.
df[' my_column '] = ' some_string ' + df[' my_column ']. astype (str)
Способ 2. Добавьте строку к каждому значению в столбце в зависимости от условия.
#define condition mask = (df[' my_column '] == ' A ') #add string to values in column equal to 'A' df. loc [mask, ' my_column '] = ' some_string ' + df[' my_column ']. astype (str)
В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18 5 11 1 to 22 7 8 2 A 19 7 10 3 A 14 9 6 4 B 14 12 6 5 B 11 9 5 6 B 20 9 9 7 B 28 4 12
Пример 1. Добавьте строку к каждому значению в столбце.
Следующий код показывает, как добавить строку «team_» к каждому значению в столбце «команда» :
#add string 'team_' to each value in team column df[' team '] = ' team_ ' + df[' team ']. astype (str) #view updated DataFrame print (df) team points assists rebounds 0 team_A 18 5 11 1 team_B 22 7 8 2 team_C 19 7 10 3 team_D 14 9 6 4 team_E 14 12 6 5 team_F 11 9 5 6 team_G 20 9 9 7 team_H 28 4 12
Обратите внимание, что к каждому значению в столбце команды добавлен префикс «team_».
Вы также можете использовать следующий синтаксис, чтобы добавить «_team» в качестве суффикса к каждому значению в столбце команды :
#add suffix 'team_' to each value in team column df[' team '] = df[' team ']. astype (str) + ' _team ' #view updated DataFrame print (df) team points assists rebounds 0 A_team 18 5 11 1 A_team 22 7 8 2 A_team 19 7 10 3 A_team 14 9 6 4 B_team 14 12 6 5 B_team 11 9 5 6 B_team 20 9 9 7 B_team 28 4 12
Пример 2. Добавьте строку к каждому значению в столбце на основе условия.
Следующий код показывает, как добавить префикс «team_» к каждому значению в столбце «команда» , где значение равно «A»:
#define condition
mask = (df[' team '] == ' A ')
#add string 'team_' to values that meet the condition
df. loc [mask, ' team '] = ' team_ ' + df[' team ']. astype (str)
#view updated DataFrame
print (df)
team points assists rebounds
0 team_A 18 5 11
1 team_A 22 7 8
2 team_A 19 7 10
3 team_A 14 9 6
4 B 14 12 6
5 B 11 9 5
6 B 20 9 9
7 B 28 4 12
Обратите внимание, что префикс «team_» добавлялся только к значениям в столбце «команда », значение которых было равно «A».
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Pandas: как выбрать столбцы, содержащие определенную строку
Pandas: как выбрать строки, которые не начинаются со строки
Pandas: как проверить, содержит ли столбец строку