Я хочу знать, сколько элементов / документов соответствует регулярному выражению. Окончательный результат должен выглядеть следующим образом:
data = [['Regular Expression 1', 10], ['Regular Expression 2', 15]]
final = pd.DataFrame(data, columns = ['Regular Expression', 'Count'])
Вот пример набора данных текстовых документов
foo = pd.DataFrame({'a' : [1,2,3,4,5],
'b' : ['hi whatever something',
'foo', 'fat a a a foo', 'cat', 'fat']})
вот регулярные выражения, которые подсчитывают данные
g1 = foo['b'][foo['b'].str.contains(r'(?=.*foo)(?=.*fat)|(\bwhatever\b)',regex=True)].count()
g2 = foo['b'][foo['b'].str.contains(r'\bfat\W+(?:\w+\W+){0,5}?foo\b',regex=True)].count()
g1 # 2
g2 # 1
Как объединить (эквивалент панды rbind
в R) строки данных? Таким образом, я могу получить данные в виде объекта "Финал"?
Я пытался pd.concat([g1,g2], axis=0)
, но я получаю это сообщение об ошибке при использовании concat: cannot concatenate a non-NDFrame object