I have a dataframe of tweets. A given tweet has multiple sentences. When I use sentimentr's sentiment function, it returns a score for each function like so:
sentiment(as.character(tweets$text[1]))$sentiment
>>> [1] 0.2474874 0.0000000
But if I want a single score for the whole tweet, I can ~accomplish this effect by taking the mean score
mean(sentiment(as.character(tweets$text[1]))$sentiment)
>>>[1] 0.1237437
So, I figured I could apply this same logic to the entire dataframe
tweets$sentiment <- mean(sentiment(as.character((tweets$text)))$sentiment)
But...this returns the same value for all tweets. And if I drop the mean() I get NULL as there are too many sentences/scores to unpack.
How can I get a single value assigned to every row of my dataframe?
We can use
sapplyto applysentimentfunction to eachtextindividually.