Bygg nya särdrag från text

Sentimentanalys i Python

Violeta Misheva

Data Scientist

Videons mål

 

Mål : Berika den befintliga datamängden med särdrag kopplade till textkolumnen (för att fånga sentiment)

Sentimentanalys i Python

Data om produktrecensioner

reviews.head()

de 5 översta raderna i Amazon-produktrecensionerna

Sentimentanalys i Python

Särdrag från recensionskolumnen

 

  • Hur lång är varje recension?
  • Hur många meningar innehåller den?
  • Vilka ordklasser förekommer?
  • Hur många skiljetecken finns det?
Sentimentanalys i Python

Tokenisera en sträng

from nltk import word_tokenize
anna_k = 'Happy families are all alike, every unhappy family is unhappy in its own way.'
word_tokenize(anna_k)

['Happy','families','are', 'all','alike',',',
 'every','unhappy', 'family', 'is','unhappy','in',
 'its','own','way','.']
Sentimentanalys i Python

Token från en kolumn

# General form of list comprehension
[expression for item in iterable]
word_tokens = [word_tokenize(review) for review in reviews.review]
type(word_tokens)
list
type(word_tokens[0])
list
Sentimentanalys i Python

Token från en kolumn

len_tokens = []

# Iterate over the word_tokens list
for i in range(len(word_tokens)):
     len_tokens.append(len(word_tokens[i]))

# Create a new feature for the length of each review
reviews['n_tokens'] = len_tokens
Sentimentanalys i Python

Hantera skiljetecken

  • Vi tog inte upp det, men du kan exkludera dem
  • Ett särdrag som mäter antalet skiljetecken
    • En recension med många skiljetecken kan tyda på en starkt känsloladdad åsikt
Sentimentanalys i Python

Recensioner med ett särdrag för längd

reviews.head()

de 5 översta raderna i Amazon-produktrecensionerna, inklusive den tillagda kolumnen för recensionslängd

Sentimentanalys i Python

Nu kör vi en övning!

Sentimentanalys i Python

Preparing Video For Download...