У меня есть df, который выглядит так (кроме большего количества столбцов и строк):
p_id
1
2
3
Как создать логику, масштабируемую для сопоставления определенных значений с определенными номерами в столбце p_id?
Пример df должен выглядеть так:
p_id:
a
b
c
другими словами, как я делаю логику, которая говорит на каждый 1
в колонке p_id
, изменения в a
вы можете использовать Series.map
& pass в словаре.
df = pd.DataFrame({'p_id': [1,2,3]})
df.p_id.map({1: 'a', 2: 'b', 3: 'c'})
#output:
0 a
1 b
2 c
Name: p_id, dtype: object
Однако, если ваше сопоставление целое с буквой, вы можете использовать функцию chr
# 97 is the ascii code for 'a'
(df.p_id+96).map(chr)
#outputs:
0 a
1 b
2 c
Name: p_id, dtype: object