Токенизация текста и подсчет в кадре данных на основе другого столбца - PullRequest
1 голос
/ 12 февраля 2020

Мне нужно токенизировать данные, но, похоже, это сбивает с толку. У меня есть такие данные:

TEXT               Author               Date
This is a Cat       Jane                 1.01.1997
This is a Dog       Sara                 1.02.2009
I have a cat        Lesner               5.07.2001

Мне нужен вывод, подобный этому:

Date:
1.01.1997    This
1.01.1997    is
1.01.1997     a
1.01.1997    cat
.
.
.
.

Есть ли способ добиться результата, как это?

1 Ответ

2 голосов
/ 12 февраля 2020

Используйте Series.str.split с Series.explode, работающим в pandas 0,25+ для Series:

s = df.set_index('Date')['TEXT'].str.split().explode()
print (s)
Date
1.01.1997    This
1.01.1997      is
1.01.1997       a
1.01.1997     Cat
1.02.2009    This
1.02.2009      is
1.02.2009       a
1.02.2009     Dog
5.07.2001       I
5.07.2001    have
5.07.2001       a
5.07.2001     cat
Name: TEXT, dtype: object

Если хотите 2 столбца DataFrame добавить Series.reset_index:

df = s.reset_index(name='text')
print (df)
         Date  text
0   1.01.1997  This
1   1.01.1997    is
2   1.01.1997     a
3   1.01.1997   Cat
4   1.02.2009  This
5   1.02.2009    is
6   1.02.2009     a
7   1.02.2009   Dog
8   5.07.2001     I
9   5.07.2001  have
10  5.07.2001     a
11  5.07.2001   cat
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...