Available in Plus only
Automatically detect and code sentiment
Quickly identify expressions of sentiment in your content using the Auto Code Wizard. Auto code sentiment to find out Is the general tone of my content positive or negative?
Text analytics is a complex process—human perception of sentiment is always going to be more accurate.
The process
Select multiple files, nodes or cases and use the Auto Code Wizard to produce results. A node matrix is created, and content is coded to sentiment nodes.
Limitations of sentiment auto coding
NVivo searches for expressions of sentiment in the content.
It is important to understand that this tool does not classify content according to sentiment. It does not take each piece of content and rate it on a Likert sentiment scale. It looks at the sentiment of words in isolation—the context is not taken into account.
Like most text analysis tools, NVivo cannot recognize:
- sarcasm
- double negatives
- slang
- dialect variations
- idioms
- ambiguity
Sentiment scoring
The process uses a scoring system. Each word containing sentiment has a pre-defined score. Each sentiment node represents a range on a scale (of sentiment).
- The score for each word determines the sentiment node it is coded to.
- The score of words can change if they are preceded by a modifier (for example, more or somewhat) which intensifies the sentiment.
- Words with a score that fall within the neutral range are not coded.
Coding examples
Example 1 - Simple sentiment
In this example, the word safe has a score which falls within the moderately positive range, so it is coded at the sentiment node Moderately Positive.
Example 2 - Multiple words of the same sentiment
In this example, the word receptive has a score which falls within the moderately positive range, and the word significantly has a score which falls within the very positive range. When a sentence contains multiple positive or multiple negative words, the sentence is coded at the most extreme child node for that sentiment. In this example, the sentence is coded at the sentiment node Very Positive.
Example 3 - Both positive and negative sentiment
In this example, the word valuable has a score which falls within the moderately positive range, and the word dangerous has a score which falls within the moderately negative range. This sentence is coded at the sentiment node Moderately Positive and the sentiment node Moderately Negative.
Example 4 - Neutral sentiment
In this example, the word top has a sentiment score that falls within the neutral range on the scale—so the sentence is not coded at any sentiment node.
Example 5 - No sentiment
In this example, there is no sentiment detected in any word—so the sentence is not coded at any sentiment node.
Mixed sentiment coding
It's possible to have the same sentence coded at positive and negative sentiment nodes—because the analysis process looks at words in isolation.
You can easily identify content coded at multiple nodes by running a coding query.
When reviewing the results of this query, you might choose to uncode some of the references at one of the sentiment nodes using coding stripes.
NVivo won't code the same content at multiple positive or multiple negative nodes.
- In List View, select the nodes, cases or text files you want to auto code. Text files include documents, PDFs, datasets and transcripts—they do not have to be of the same type but they should be the same language.
- On the Home tab, in the Coding group, click Auto Code then follow the steps on the Wizard.
Wizard step | Description |
---|---|
Choose how you would like to auto code |
Click Identify sentiment. You may be prompted to download and install additional files. Make sure your project text content language is set to the language of the sources you are analyzing. |
Identifying sentiment |
NVivo analyzes your files for sentiment. |
Select how your text passages will be coded |
Choose how finely NVivo should code text passages:
The results are displayed as a node matrix in Detail View—and saved in the Node Matrices folder. The coding references are added to the nodes in the Sentiment folder in the Nodes group. |
Work with the results of sentiment coding
When you auto code sentiment, the results are displayed as a node matrix in Detail View and coding references are stored in the Sentiment nodes. You can view the saved node matrix later if you want a record of the coding performed by the Wizard at a particular date and time. This node matrix is a static record that is not updated if you subsequently uncode some of the content.
1Columns display the names of the nodes that have been coded by the Wizard.
2Rows display the files that have been coded by the Wizard.
3 Cells display the number of coding references that were created for a file (row) at a node (column). You can change the display, for example transpose the columns and rows—click Transpose in the View group, on the Matrix tab.
4 Click the Chart tab to see a visual representation of the auto coding results.
NOTE The number of node references for a file displayed in the Nodes column in List View includes the node matrix.
How are sentiment nodes different?
When you auto code sentiment, the results are stored in sentiment nodes—which behave differently to other nodes in NVivo.
There are two parent sentiment nodes: Positive and Negative. Each parent node has two child nodes: Very and Moderately. Coding in the child nodes aggregates to the parent by default.
Sentiment nodes are created and used by NVivo. You cannot create, rename, move or merge sentiment nodes.
You can code and uncode in sentiment nodes, include them in a framework matrix and review the references just like any other node.
By default, positive sentiment nodes are assigned the color green, and negative sentiment nodes are assigned the color red. You can change these at any time.
Next steps after sentiment coding
Review the results to confirm that you are satisfied with the auto coding before performing other actions in your project—so that you can adjust the coding if you need to.
- Review what has been coded. Double click a cell in the matrix to see the content that was coded at the intersection of the file and node. Is the content relevant to that node? Take a look at other cells in the matrix.
- Decide whether you are satisfied with the results—do you want to keep the coding or undo the entire auto coding operation?
- If you are mostly satisfied with the results, but need to fine-tune some of the auto coding, you may want to uncode some of the references. Alternatively, you may want to change coding from one sentiment to another. The coding reference is still displayed in Detail View for the cell, even if you have uncoded or reassigned it.
- If you are not satisfied with the overall results, you may want to 'undo' the auto coding completely.
- Open each child sentiment node and change the sentiment coding if required.
- Run a coding query to identify content that is coded at both a positive and negative node—for example, choose to find all content coded at the sentiment nodes Very negative and Very positive. Review the results of the query. If you want to uncode content at one of the sentiment nodes, the best approach is to remove coding using coding stripes.
- Discover the general sentiment towards an issue by auto coding your files to themes then running a matrix coding query.
Change sentiment coding
- Open a child sentiment node in Detail View.
- Select the content you want to change.
- On the Sentiment tab, in the Coding group, click Change Sentiment then select the sentiment node you want the reference coded at. The selected content is uncoded at the current sentiment node and re-coded at the selected sentiment node.
NOTE
- Alternatively, you can right-click on the selected content and choose Change Sentiment.
- Select Neutral (Uncode) to remove the sentiment coding from the selected content.
Why am I getting unexpected results from sentiment coding?
Auto coding sentiment uses linguistic processes and a specialized sentiment dictionary to scan your files to identify sentiment. This is a complex task—manual coding is always going to be more accurate.
- Understand the structure of your files—look for clear sentence and paragraph structure. If you choose to Code sentences, full stops are used to designate the end of sentences. Make sure that sentences in your files end with a full stop, including bulleted lists and text in table cells within a document. Any full stops used to designate an abbreviation will be interpreted as the end of a sentence.
- Make sure each file is in one language, and that you process files of the same language together. The auto coding themes process can only detect one language at a time—and this is based on the text content language setting of your project.
- Minimize the presence of advertising or repeated content in your files. If you are working with web pages, capture only the main content on the page before importing into your project.
- Be aware that a great deal of content won't be coded at all. It may be deemed not to have any sentiment, or the sentiment may fall within the neutral range on the sentiment scale.
How can I identify auto coded sentiment?
Auto coded sentiment references that were created by the Wizard are associated with the user profile 'NVivo' with the initials 'NV'.
If you have performed multiple sentiment auto coding operations, you will not be able to distinguish which references were created by a particular coding operation. To see the references from a particular operation, you can view the specific node matrix in the Node Matrices folder.
You can run a matrix coding query to display the coding references currently associated with the user 'NVivo'.