Я пытаюсь написать простой классификатор записей.Я хочу добавить столбец, значение которого классифицирует запись.Я хочу кодифицировать свои правила классификации в yaml или аналогичном файле для целей обслуживания.
Я использую Pandas, так как это кажется наилучшим способом сделать это с записями csv в python.Я открыт для других предложений.Я новичок в pandas, и мои навыки в Python вежливо описываются как «почему это выглядит как perl?»
Я получил фрейм данных (trans) и хочу применить свои правила следующим образом:
trans['class'][(trans['foo'] > 5) & (trans['bar'].str.contains(re.compile('baz|one|two', re.I))] = 'Record Type 1'
Это работает в интерактивном режиме.Я хотел бы иметь возможность генерировать классифицирующий индекс, "(trans['foo'] > 5) & (trans['bar'].str.contains(re.compile('baz|one|two', re.I))"
, динамически из каждого правила в моем файле yaml.Я успешно построил строки так, что у меня есть такие вещи:
slice = "(trans['foo'] > 5) & (trans['bar'].str.contains(re.compile('baz|one|two', re.I))"
trans['class'][slice] = 'Record Type 1'
Это не работает.Что я должен делать вместо этого?