Пожалуйста, помогите мне завершить этот фрагмент кода. Сообщите мне, если потребуется дополнительная информация.
Заранее спасибо!
Дано: столбец 'PROD_NAME' из pandas фрейма данных строкового типа (например, Smiths Crinkle Cut Chips Chicken g), список определенных слов (['Chip', 'Chips' и т. Д.])
Сделать: если ни одно из слов из списка не содержится в строки объектов фрейма данных, мы отбрасываем всю строку. По сути, мы удаляем ненужные продукты из фрейма данных.
Вот как выглядят данные:
введите описание изображения здесь
Вот мой код:
# create a function to Keep only those products which have
# chip, chips, doritos, dorito, pringle, Pringles, Chps, chp, in their name
def onlyChips(df, *cols):
temp = []
chips = ['Chip', 'Chips', 'Doritos', 'Dorito', 'Pringle', 'Pringles', 'Chps', 'Chp']
copy = cp.deepcopy(df)
for col in [*cols]:
for i in range(len(copy[col])):
for item in chips:
if item not in copy[col][i]:
flag = False
else:
flag = True
break;
# drop only those string which doesn't have any match from chips list, if flag never became True
if not flag:
# drop the whole row
return <new created dataframe>
new = onlyChips(df_txn, 'PROD_NAME')