Анализ настроений TextBlob: значения nan

Я новичок в анализе настроений и изучаю TextBlob.

Мои данные — это предварительно обработанные данные Twitter. Это серия, и каждый твит был очищен и токенизирован:

    0   [new, leaked, treasury, document, full, sugges...
    1   [tommy, robinson, endorsing, conservative, for...
    2   [thanks, already, watched, catch, tv, morning, ]
    3   [treasury, document, check, today, check, cons...
    4   [utterly, stunning, video, hoped, prayed, woul...
    ... ...
    307370  [trump, disciple, copycat]
    307373  [disgusting]
    307389  [wonder, people, vote, racist, homophobe, like...
    307391  [gary, neville, slam, fuelling, racism, manche...
    307393  [brexit, fault, excuseforeverything]

Когда я запускаю настроение textblob (используя справку из , применяю textblob для каждого строка кадра данных), мой результат — столбец значений nan:

    # Create sentiment column using textblob
    # Source: https://stackoverflow.com/questions/43485469/apply-textblob-in-for-each-row-of-a-dataframe

    def sentiment_calc(text):
try:
    return TextBlob(text).sentiment
except:
    return None

    boris_data['sentiment'] = boris_data['text'].apply(sentiment_calc)

         text   sentiment
    0   [new, leaked, treasury, document, full, sugges...   None
    1   [tommy, robinson, endorsing, conservative, for...   None
    2   [thanks, already, watched, catch, tv, morning, ]    None
    3   [treasury, document, check, today, check, cons...   None
    4   [utterly, stunning, video, hoped, prayed, woul...   None
       ...  ... ...
    307370  [trump, disciple, copycat]  None
    307373  [disgusting]    None
    307389  [wonder, people, vote, racist, homophobe, like...   None
    307391  [gary, neville, slam, fuelling, racism, manche...   None
    307393  [brexit, fault, excuseforeverything]    None

person Philip Liu    schedule 09.12.2019    source источник
comment
Ваш код настроен на возврат None, когда ввод не в строковом формате, в соответствии с прикрепленной вами ссылкой.   -  person Gary    schedule 09.12.2019
comment
Когда я удаляю исключение, ошибка "неожиданный EOF при разборе"   -  person Philip Liu    schedule 09.12.2019
comment
Почему бы вам не преобразовать значения text в строку (возможно, для пары строк), а затем проверить логику. Посмотрите, возникает ли проблема из-за того, что text не является строковым значением.   -  person Gary    schedule 09.12.2019
comment
Да, текст не в строках. Я понимаю, что это ''.join(), но как мне применить это ко всем строкам, а не только к одной?   -  person Philip Liu    schedule 09.12.2019
comment
Предполагая, что boris_data['text']содержит текстовый столбец, вы можете сделать boris_data['text']=boris_data['text'].astype(str), чтобы преобразовать столбец в строку.   -  person Gary    schedule 09.12.2019