Я предполагаю, что проблема связана с функцией «применить», но что я должен изменить?:
def value(val,spec_1,spec_2,spec_3,spec_4):
'''filtering Specific values'''
if 'DOOm1' in val or 'DOOm2' in val:
return spec_1
elif 'DOOm3' in val:
return spec_2
elif 'DOOm4' not in val:
return spec_3
else:
return spec_4
data['value'] = data.value.apply(value(val = data['value'],spec_1 ='Noted',spec_2= 'Noted',spec_3 = 'rare',spec_4 = 'DOOm4'))
data= data[data['value'] != 'rare']
Я думаю, вы можете использовать лямбда-функцию для значений передачи из столбца value
, например скаляров:
data['value'] = data.value.apply(lambda x: value(x, spec_1 ='Noted',spec_2= 'Noted',spec_3 = 'rare',spec_4 = 'DOOm4'))
Можете ли вы добавить некоторые образцы данных, 3-5 строк?