#python #pandas #string #replace
Вопрос:
Я начинаю с Python. Мне нужно заменить строки из «Старого» столбца на основе условия. Если первый символ строки A
, мне нужно заменить его на Z
, но мне также нужно добавить 1 к значению последнего символа
Например:
Старый | Новое |
---|---|
A2 | Z3 |
C4 | C4 |
B4 | B4 |
A5 | Z6 |
A1 | Z2 |
df = pd.DataFrame({'Old': ['A2', 'C4', 'B4', 'A5'], 'New': ['Z3', 'C4', 'B4', 'Z6']}) df['New'] = df['Old'].str.replace('A','Z')
Ответ №1:
Используйте пользовательскую функцию:
df['New'] = df['Old'].apply(lambda x: x if x[0] != 'A' else f'Z{int(x[1:]) 1}') print(df) # Output: Old New 0 A2 Z3 1 C4 C4 2 B4 B4 3 A5 Z6
Комментарии:
1. Отлично, изучу лямбду