#python #pandas
#python #панды
Вопрос:
У меня есть этот фрейм данных:
feed
==========
garden_1
garden_2
equipment
device
Мне нужно заменить garden_*
на total_*
.
Как я могу это сделать?
Это то, что я пробовал?
df["feed"] = np.where(("garden" in df.feed), "total", df.feed)
Ответ №1:
Используйте функцию dataframe.replace и используйте регулярное выражение для сопоставления строк.
Попробуйте этот код:
df = df['feed'].replace(to_replace ='garden_*', value = 'total_', regex = True)
.
Ссылка:
pandas.DataFrame.replace()
Ответ №2:
Вы можете использовать np.where
и str.contains
для этого:
df['feed'] = np.where(df['feed'].str.contains(r'garden',case=False),'total',df['feed'])
это даст вам то, что вам нужно.