Sentiment Analysis using Content Analysis Software: Project Assignment

In the last two posts, I’ve been discussing the Yoshikoder sentiment analysis project in my Communication Research class here at Shepherd University.

My first post looked at the project in general. And the second, most recent post, looked at how to teach computer-assisted content analysis using the Yoshikoder computer-assisted content analysis software and the activities I provide my students to prepare them for the project.

I encourage you to check out those posts for background and set up! Ok, now on to sharing the assignment itself and providing a brief overview of it.

As I’ve stated elsewhere, the purpose of this assignment is to

1) give students a hands-on look under the hood of sentiment analysis – that is, to understand HOW it works and its flaws.

2) To teach students via hands=on experience about quantitative content analysis, particularly computer-assisted content analysis

3) To teach them how to conduct a computer-assisted content analysis using software (Yoshikoder)

So here’s the set up to the assignment (which you can see below). This hands-on learning project is based on a real brand and a realistic but made up scenario. I do this with both this assignment, and my first project in this class.  Specifically, I provide The Situation or Problem / Campaign goals and objectives (of an imaginary campaign that is ongoing or happened) / benchmarks / KPIs.

In this case, the situation had to do with a popular online retail brand and rising customer complains and dissatisfaction as the brand has grown beyond its core base of loyal customers in recent years.I’ve redacted the brand and the situation from the below assignment. But you can fill in your own.

I rely on Stacks (2011) model for writing the problem, goals, objectives.  While I provide the research objective(s) in my first project, in this project students must come up with the research objective(s) and RQ(s).

I then provide some benchmarks. In this scenario, at a certain point in time sentiment was strong (let’s say, 70% positive). And then after the hypothetical situation, it dropped (say, to 50%). The students have been recently introduced to the concepts of benchmarks and KPIs via a brief lecture, so this is their first experience with these concepts. They are given 1 KPI (let’s say 65% positive sentiment) against which to measure their success. Keep in mind that the situation assumes that a campaign already took place aimed at addressing decreased customer satisfaction and negative comments on Twitter addressed at the brand of choice. We are now seeking to assess whether this campaign that happened successfully increased sentiment towards the brand (at a deeper level, repaired relationships and the image of the brand among the online community).

There are other important considerations students must make:

1) Since we’ve discussed sentiment and its flaws, they need to think about the valence of sentiment (The AFINN dictionary scores terms from -5 to +5), and they need to research and understand how AFINN was designed and works (I provide some sources to get them started). If you’re not familiar with the AFINN dictionary, it was designed for sentiment analysis of microblogs.It is a free sentiment dictionary of terms you can download and use in Yoshikoder. 

For more details on the assignment, check out the assignment embedded below and the requirements for what must be turned in.

As I’ve noted in a previous post, this project isn’t perfect. But it is a fairly straightforward and accessible learning experience for students who are in their first semester of experiencing how research can be conducted. It covers a wide array of experiences and learning opportunities – from discussion of what sentiment is, to understanding its flaws, to understanding the flaws of quantitative content analysis, to learning to apply a number of key research terms, as well as providing exposure to how to write research reports. The project itself is bolstered by several lectures, it comes about 1/2 way through the semester, and takes several days in the classroom of hands on learning. Students of course finish the writing up outside of class. But we do the analysis all in class to ensure students are getting my help as the “guide on the side.”

My previous post covers some activities we do to build up to this assignment.

So that’s all for now! Please feel to use this assignment, to modify it, and improve it. If you do, come back and share how you have or how you would improve upon it and modify it in the comments below!

If you want to know more about my Communication Research class, please see this post which includes the syllabus.

Teaching Computer-Assisted Content Analysis with Yoshikoder

Last blog post I discussed the second project in my applied research class, a sentiment analysis of Tweets using Yoshikoder – a free computer-assisted content analysis program from Harvard.

As promised, I want to share my assignment, and my handout for students that teaches them how to use Yoshikoder. Before we do the project, however, I do a brief in class activity to get students learning how to use Yoshikoder. So let’s start there for today’s post. And next post, I’ll share the assignment itself.

PART 1: THE SET UP

What I like to do, is present the problem to the students via the project assignment. Then, we go back and start learning what we’d need to do to solve the problem. So, after lecturing about what sentiment analysis is and why it is important, I get students introduced first to the idea of constructing a coding sheet for keywords by taking a list of keywords and adding them to categories.

First, we talk about the idea in class, and I show them some simple examples, like: If I wanted to code a sample for the presence of “sunshine” – what words would I need? Students brainstorm things like  start, sun, sunny, sunshine, etc., etc.

We discuss the importance of mutual exclusivity, being exhaustive, etc.

I show an example from my dissertation which looked at agenda setting topics on Twitter.

On the class day before I introduce Yoshikoder to the class, students do a practice assignment where I give them a list of random terms related to politics and elections. They then have to create “positive” and “negative” content categories using the terms. The terms aren’t necessarily well fit for this exercise, which gets them thinking a bit… They then hand code a sample of Tweets I provide about two different politicians. I tend to use the most recent election. So, in this case Obama and Romney. They are frustrated by having to hand code these Tweets – but a little trick is to do a search for the exact phrases in the Tweet files on the computer and they are done fairly quickly. Ok, so on the next class period:

1) Practice with Yoshikoder We do the same basic task, but this time they learn to program their “positive” and “negative” categories into Yoshikoder. They then load the Tweets (which I have saved as a txt file) and analyze them for the presence of their positive and negative content categories. This is a great point to stop and have students assess the reliability between what they hand coded and what the computer coded. Often, there will be discrepancies. And this makes for a great opportunity for discussion.

Here is the activity that I use in class. I also provide Tweets that I’ve downloaded using the search terms for the politician/candidate I’m using in the activity (e.g., Obama; Romney) in plain text format so Yoshikoder can read it. Also, see the below handout which I provide students to show them how to use Yoshikoder and how to program, and run the analyses I just described.

As I mentioned above, I create a handout that I like to give students that explains the different functionalities of Yoshikoder and how to run the analyses. As I’ve discussed elsewhere, I like to provide handouts. And the one below isn’t one of my more elaborate handouts. But it provides a quick overview with some screen shots to show what buttons need to be clicked. This is super helpful if you are trying to learn Yoshikoder, or want to use it alongside the activity (discussed in this post or the project discussed in my last post, and which I will provide in my next blog post).


Enjoy! .

EDIT: The assignment is now up. See the post.

If you’d like to learn more about using Yoshikoder, I found this great tutorial:

– Cheers! Matt

Google Scholar Power User’s Guide: Research Recommendations (3 of 3)

This is the third and final post on what’s been a popular series of posts – becoming a Google Scholar power user. Post #1 explored the advanced search features of Google Scholar, and post #2 explored why you should have a Google Scholar profile.

This post about the Recommendations feature comes last because you must have a Google Scholar profile in order to use it.

In past blog posts, I’ve written about great ways to find research articles for your literature review. Specifically, I’ve talked about using Google Scholar search, and the Mendeley search option.

Google Scholar recommended research is another way of finding research articles that I’m loving. It is super easy to use and I’ve found tons of articles I wouldn’t have found before. As you recall, these recommendations are based on your citations – in other words, what you’ve published online. So of course they are going to be tailored to your research interests.

Google Scholar recommendations

Click to enlarge.

If you have your Google Scholar profile set up, Google Scholar will recommend new research articles to you based on your publications. So the recommendations are almost always super relevant and helpful for future studies!

To access these, go to scholar.google.com and click “My Updates” at the top.

Also, Google Scholar will often list the most recent recommendations under the search bar at scholar.google.com. You can get the rest by clicking “see all updates” (see photo above)

Here are my recommended articles today:

Click to enlarge.

Click to enlarge.

Tailored scholarly article recommendations – what could be better?

Hope you enjoyed this series of posts on Google Scholar! If you did, please share this post!

Other articles in series:

-Cheers!

Matt

Become a Google Scholar Power User (1 of 3)

Update: Posts #2 (Google Scholar Profiles) and #3 (Google Scholar Recommendations) are now available.

I love Google Scholar. It is useful for not only your research agenda, but also it is a tool to teach your students about.

When teaching students about finding academic research, no discussion is complete without Google Scholar. In fact, I tell my students this is my go to source… though I’m sure the library probably wouldn’t be happy to hear that.

GScholars primary purpose is as a search engine for scholarly articles. Simply goto: scholar.google.com and search for an article title, subject (e.g., a theory, construct), keyword, or author.

There’s much more to GScholar than a simple search. GScholar has some little known (and some very new!) features that are very useful. Here’s how to become a Google Scholar Power User, Part 1 – Advanced Search Features: (See: Post #2 in this series on Google Scholar Profiles).

Great Benefits!

It works just like Google, but it indexes academic publications. Many libraries are linked with Google Scholar, such that if you search Google Scholar and an article comes up that your school library has, you can access it directly through your search engine results. (While this often happens automatically when on campus, you can find out if your library has the article when away from campus as well. Go to your settings, click library, and do a search for your universities library. Then click save).

Advanced Features:

1) Advanced Article Access

Another great benefit is that sometimes articles are hosted online in various places, and you can find access to those articles that you would otherwise not have access to through your library.

Identifying this access is easy. To the right of the search result, you will see [PDF] available from XYZ or [HTML] available from. For an example, here is a search for my own research .  Notice how the “Getting Political on Social Network Sites” is available as HTML from the online journal First Monday.

Example of Google Scholar Search Results. See explanation of features below.

Example of Google Scholar Search Results. See explanation of features below. Click this image to enlarge it.

2) More Access Options

See an article that you want to get access to, but your library doesn’t have it and you don’t see a PDF version offered in the search results? Click “## versions” directly under the search result description. Sometimes, the primary result that Google shows does not provide access to the article, but alternative versions do. By clicking “## versions”, you may find that another version of the article is available online.

3) Related Articles

When conducting research, we’re often looking for research on a particular theory, construct, etc. So, if we find an article that fits our search goals, wouldn’t it be great to see what other articles are similar? The “Related Articles” link under the search entry does just that. For example, if I find an article on agenda setting in social media in a search result, and want to see more like it, rather than try a new search query, I’ll click “related articles” under the article I like for a whole host of articles related to agenda setting on social media.

4) Cited By Feature

The cited by feature offers a similar benefit to the “related articles” feature. It is very helpful because you can see who has cited this work. Why is that great? Because if the article you have found is of interest, likely those works that cited it are related and may be helpful! More so, they may have built on that study and thus their theory and findings may provide more recent insights and advancements to the topic you’re studying.

5) Author

If you want to see more articles by a specific author, click an author’s name (such as my name in the example above). This will take you to the author’s profile on GScholar (if they have one) where you can see all the articles they’ve published. This is something I’ll discuss more in a future post.

6) Cite

Want the APA or MLA citation format for the article in your search result? Click cite. A window pops up and you can choose the citation you need. Quick. Easy. Super helpful. You can also import into particular format styles.

7) Google Scholar Library

This is a new feature and one I just discovered. It works sort of like how Mendely lets you create a library of articles. You need a Google Scholar account to use this feature – which is of course free and connected to your Google account.

What you get, is an online custom list of articles. When you enable Library, you are asked if you want to import all articles you’ve cited. That is, Google indexes all the articles you have cited in the online publications Google has associated with you.

To access your library click “My library” at scholar.google.com. To add articles to your library, in a search result, you can click “save” to save that article directly from search results into your library.

It seems the deleting articles requires you to click on them individually and then click delete. I found no mass editing.

You can set up labels to organize articles into categories. For example, I may have a label “politics” another “social networks” and another “blogs.” By clicking an article in your library, then clicking the ‘labels’ drop down you can create and select labels.

This is a brand new feature and it has a lot of potential. Given that I’m a big Mendeley user, the library feature may be redundant. But I’m going to play with it and see if it has added benefit. I do like the idea that it provides direct access to articles available online.

Here is the How to and FAQ of Google Scholar Libraries 

That’s all for now!

The next 2 posts get beyond the basics of Google Search search results into Recommendations and Google Profiles. Check them out:

  1. Post #2 Scholar Profiles.
  2. Post #3 Scholar Recommendations

 

Do you use Google Scholar for search? What are your favorite features? What do you think about the new library feature?