Как добавить нумерацию предложений для токенизированных слов в фрейме данных

#python #pandas #nlp

#python #pandas #nlp

Вопрос:

В настоящее время у меня есть фрейм данных со столбцом уже маркированных слов и другими столбцами с тегами:

   token      tag
1    I        PRN
2    like     VBD
3    apples   NNP
4    .         .
5    John     PRN
6    likes    VBD
7    pears    NNP
8     .        .
 

Я хотел бы добавить нумерацию предложений в df, добавив дополнительный столбец:

   token      tag   sentence #
1    I        PRN  sentence 1
2    like     VBD  sentence 1
3    apples   NNP  sentence 1
4    .         .   sentence 1
5    John     PRN  sentence 2
6    likes    VBD  sentence 2
7    pears    NNP  sentence 2
8     .        .   sentence 2
 

Я работаю с аннотированным человеком набором данных, который был предварительно маркирован. Я уже пытался де-токенизировать его, добавив количество предложений, а затем повторно его токенизировать; что, к сожалению, дало мне совершенно другое количество токенов. Этот метод приведет к тому, что столбцы тегов не будут совпадать со столбцом токена.

Большое вам спасибо!

Ответ №1:

Доброе утро,

Если вы хотели бы добавить предложение, содержащее работу и токен, я бы предложил добавить ссылку на первичный ключ к предложению, из которого вы выполняете синтаксический анализ. Я хотел бы помочь больше, но если я не укажу вам метод, который вы используете для получения токенов и тегов, я не смогу помочь дальше. Я привел методизированный подход ниже. Используете ли вы самодельный метод / модуль? Используете ли вы пакет / модуль, который находится в Sci-Kit learn для токенизации строк? Хорошего дня!

Мой подход:

  • Возьмите набор данных
  • Очистите набор данных
  • Назначьте ссылочный / GUID ключ каждой фразе, которая токенизируется
  • Запустите метод токенизации
  • Выполните объединение двух наборов данных, чтобы создать нужное вам представление модели.

Комментарии:

1. Доброе утро, спасибо за ваше предложение! Я работаю с аннотированным человеком набором данных, который был предварительно маркирован. Я уже пытался де-токенизировать его, добавив количество предложений, а затем повторно его токенизировать; что, к сожалению, дало мне совершенно другое количество токенов.