Seeing the networks in your company

Thus far we have assumed that we had network data. But data like the “Professionals” was gathered using a survey in a real organization. In this post I will walk you through the process of creating a simple network survey in SurveyMonkey (a web based survey application) and analyzing the responses from the survey using R. Lets begin by going to www.surveymonkey.com.  Here is the landing page (as of May 5, 2017). You will need to purchase a basic subscription to download the data (I purchased an educator subscription for $18).

Screen Shot 2017-05-05 at 8.31.33 AM.png

I’ve signed up for a free account (for now). After I complete all my signup information. Here is the screen that I get, asking me to start by creating a survey.

Screen Shot 2017-05-05 at 8.35.15 AM

I will call my survey, “Simple Network Survey.” I enter this into the text box, and then press + Add Questions. Pressing this takes me to a new screen.

 

Screen Shot 2017-05-05 at 8.37.27 AM

In order to create the appropriate network data (where we know who considers whom a friend, advice giver, etc.), we will need to begin by asking people who they are. I prefer to do this first using a dropdown menu where an individual can select just one option. The question I ask is: What is your name? Please select from the dropdown menu.  Make sure that the question type is “Dropdown”

Screen Shot 2017-05-05 at 8.39.27 AM.png

Once I have this, I would like to enter the names of the people who will be taking the survey. My list (of fake people) include: Alice, Bob, Chris, Dina, Elena, Frank, and Greg. I add these using the “Add Answers in Bulk” option:

Screen Shot 2017-05-05 at 8.42.24 AM.png

Once I click save, I move to the Options tab, and I check off “Require an Answer to This Question.” Next I click DONE. 

I now create a new page (+ New Page). This is where I will place the network survey.

Screen Shot 2017-05-05 at 8.44.24 AM.png

For the purposes of this example, I will only ask two questions about people’s networks. What questions shall we ask?

Perhaps one of the things that hardest to teach about network analysis is determining the right types of questions to ask people. The questions should reveal something people and their social networks that we might not have been able to assess if we hadn’t asked them those questions.

We can think about kinds of questions in terms of a 2×2 — on one dimension we have questions about networks that provide people with resources (Instrumental) and on the other, we have questions about more personal/social relationships (e.g., Expresssive).  On the other dimension we have questions that are either “Enduring or qualitative” or “Event based.” The table below summarizes some examples.

Enduring/Qualitative Event Based
Instrumental Advice

Task

Information

Asked for advice in the past week.
Expressive Friendship

Trust

Social support

Informally go to Lunch

Talked about important personal matters

Here are some examples:

Questions about who you know:

Below is a list of names of your colleagues at [firm name]. Some of them you may (1) know well, others you (2) may be acquainted with, and still others (3) you may not know at all. Please check the box next to the names of those individuals who are in categories (1) or (2).

Advice (Work-related)

Sometimes it is useful to get help or advice from your colleagues on performing some aspect of doing your work well. Please check the box next to the names of those individuals who you would approach for help or advice on such work related issues.

Advice (Work related) Reciprocal

There also may be people who come to you seeking help or advice about doing their own work well. Please check the box next to the names of those individuals who might typically come to you for help or advice on work related issues.

Advice (Career and Success)

Sometimes it is useful to seek advice from colleagues at work about more than just how to do your work well. For example, you may be interested in “how things work” around here, or how to optimize your chances for a successful career here. If you needed help along these lines, who would you go to for help or advice regarding these issues?  Please check the box next to the names of those individuals who you would approach for help or advice on these non-technical related issues.

Advice (Career and Success) Reciprocal

There also may be people who come to you seeking help or advice about such non-task related issues. Please check the box next to the names of those individuals who might typically come to you for help or advice along these dimensions.

Friendship

Sometimes during the course of interactions at the workplace, friendships form. We are interested in whether you have people at [firm name] who you consider to be friends of yours. Please check the box next to the names of the individuals who you think of as friends here at [firm name].

Event based questions:

Lunch

Below you will find a list of people who work at [firm name]. Please check the names of the individuals with whom you have met with for lunch at least once during the past 30 days.

Event based advice

Below you will find a list of people who work at [firm name]. Please check the names of the individuals from whom you’ve sought out advice about work related matters at least once during the past 30 days.

The problem of recall: People are highly inaccurate when you ask them to recall specific interaction events. They are much more accurate when you ask them to recall enduring and qualitatively meaningful relationships.  Events are highly informative when you know what happens during that event, but otherwise they are harder to generalize from.

Now that we have some examples of questions, lets add one two the survey. I typically recommend having 2 questions, one expressive (e.g., friendship) and one instrumental (e.g., advice). They usually provide different information.

Lets, for the sake of example, add an advice network question to Page 2. We will create a “Multiple Choice” question where the answers are the names of the people in the organization (e.g., Alice, etc.). The question we ask is:

Sometimes it is useful to get help or advice from your colleagues on performing some aspect of doing your work well. Please check the box next to the names of those individuals who you would approach for help or advice on such work related issues.

We will also add a short note telling people not to select their own name and to check as few or as many names as appropriate. Below the options, also check “Allow more than one answer to this question (use checkboxes).

Screen Shot 2017-05-05 at 9.00.21 AM

Let us now save this question by clicking save.

I will now add one more question, this can be our “Dependent variable” which measures the extent to which co-workers have a positive or negative impact.

Screen Shot 2017-05-05 at 9.55.18 AM.png

After all the questions are in, click “Next” at the top and lets begin collecting responses.

Screenshot 2017-05-05 10.39.16.png

We will use the “Get Web Link” option. The web link for the survey I made is:

https://www.surveymonkey.com/r/QZ5KG3S

Lets quickly fill out the survey. I will also fill in responses for everyone in the roster.

Screenshot 2017-05-05 10.42.01.png

After all the responses are in for all the people in the organization (e.g., Alice…) we can download the data. I have downloaded the excel file. It comes as a zip file and a resulting csv file with the data. These are respectively attached here and here.

The raw CSV file that is exported from Survey Monkey looks like this:

Screenshot 2017-05-05 19.26.35.png

Lets clean this up so that we get a 7×7 matrix. Note that there is an ordered list of names on the left (Alice…Greg on the rows) and a similarly ordered list of names at the top (columns). The rows are the respondents (senders) and the columns are the people with whom they do and do not have a relationship. With the names, the matrix looks like:

Screenshot 2017-05-05 19.30.34.png

Without the names, it looks like:

Screenshot 2017-05-05 19.37.20.png

Try to match it up to the survey response in our original file. The matrix is now saved as surveyexample.csv.

The following code imports the data (the cleaned up version above) and plots the network:

# This file provides some simple code to get you started on your Network Analysis Journey

library(data.table)

library(curl)

library(sna)

#(Q0) “who do you know or know of at [the firm]”,

#Load the “Survey Monkey” network data from Dropbox.

survey <- fread(https://www.dropbox.com/s/nd13m6szn8d8lto/surveyexample.csv?dl=1&#8217;)

#Convert the data.table objects into matrix format so they can be

#analyzed using the sna package.

survey = as.matrix(survey)

# this creates the no

names = c(“Alice”, “Bob”, “Chris”,“Dina”,“Elena”,“Frank”, “Greg”)

# Rename all the rows

rownames(survey) = names

# Rename all the columns

colnames(survey) = names

# Plot the survey network

gplot(survey, label = names)

Here is the resulting network.

Screenshot 2017-05-05 20.44.55.png

 

We can calculate each person’s centrality and also correlate the network positions with the final question we asked. We need to first convert it into a numeric and then import it into R.

# This file provides some simple code to get you started on your Network Analysis Journey

library(data.table)
library(curl)
library(sna)

#(Q0) “who do you know or know of at [the firm]”,

#Load the “Survey Monkey” network data from Dropbox.
survey <- fread(‘https://www.dropbox.com/s/nd13m6szn8d8lto/surveyexample.csv?dl=1&#8217;)

#Convert the data.table objects into matrix format so they can be
#analyzed using the sna package.
survey = as.matrix(survey)

# this creates the no
names = c(“Alice”, “Bob”, “Chris”,”Dina”,”Elena”,”Frank”, “Greg”)

# Rename all the rows
rownames(survey) = names

# Rename all the columns
colnames(survey) = names

# Plot the survey network
gplot(survey, label = names)

#Load the “Survey Monkey” network data from Dropbox.
surveyoutcome <- fread(‘https://www.dropbox.com/s/we2dvevfejte8ov/surveyoutcome.csv?dl=1&#8217;)

#Convert the data.table objects into matrix format so they can be
#analyzed using the sna package.
surveyoutcome = as.matrix(surveyoutcome)

# rename rownames and create a variable which is the integer
# version of the numeric response
colnames(surveyoutcome) = c(“name”,”response”,”respval”)
respval = as.integer(surveyoutcome[,3])

# Calculate outdegree for the survey response
survey.outdegree = degree(survey, cmode = “outdegree”)

# Estimate a model regressing the respval on the outdgree
m.0 = lm(respval ~ survey.outdegree)
summary(m.0)

Here is the regression outcome:

Screenshot 2017-05-05 21.01.51.png

 

The above walk-through should give you a way to collect network data, and then analyze it using R.

Before, I conclude I want to discuss the various survey approaches used by network analysts

Types of Network Surveys

Roster based surveys: Roster based methods are perhaps the most common approach. This is what we just completed above. With roster surveys, you provide the respondent with a list of names of people or organizations. Then you ask them to indicate (by checking off the boxes next to the names) which of these people they have a certain relationship with. The nice thing about roster based surveys is that they tend to be quite accurate because people don’t have to recall the names out of the blue. Further, the roster allows you get longer network lists than if people had to recall names from memory. The down-side of this is that if the organization has too many people (say in the 1000s) it would be too hard to make people go through a list of 1000 or even worse, 2000 people.

List based surveys: The other type of survey is a list survey. Here you ask the question and then request that your respondents list the names of people in the organization that they have this relationship with. What might be some concerns with a survey method like this? 

Ego-network surveys:  This is a slightly modified version of the list-based survey. Here you ask the people to list up to five people (or k people) that they have a certain relationship with. Then you ask them to indicate whether the people listed also have a relationship of a certain type with each other. 

Position generator surveys: This is perhaps the least structural of the network surveys. Here what you do is the following: You provide a list of the “positions” that people can potentially occupy – so in an organization you list the different functional areas, levels of seniority, etc.  And then ask people whether they have a no relationship with someone in such a position, acquaintance in that position, a friend in that position, etc.  This is a very indirect measure of networks, but it provides a broad understanding of the “range” of a persons network.

In addition to these classical approaches to collecting network data, organizations have more modern methods available to figure out potential sources of interaction between their employees. These include:

Email:  IT administrators know every email you send to everyone else and what it contains. This is true in most cases in the vast majority of organizations. Scary, yes. True, yes. But this is information that everyone knows exists and some organizations are using it to understand informal interaction and trying to make better decisions with this information.

Mailing list/Groups activity: Another source of information about networks and interaction are the mailing lists that people are a part of.

RFID:  Most of our ID cards have RFID these days – we use these cards to enter/exit buildings. RFID censors can also be placed in strategic locations to understand interactions that are face-to-face between people. Conference organizers are also using RFID tags to understand interaction among attendees.

Online data sources:

LinkedIn —  LinkedIn has a massive economic graph. Their data include where people got their degrees, where they worked, who they worked with, etc.

Facebook: This is the largest social network in the world. Period.

About firms:  The websites of Venture capital firms tell you who their partners, etc. are and where they attended college and when they graduated.  It also tells you that some may be investing in similar projects.

 

More: In a future post, I will walk through how to create “network” data using text in documents. The “ties” here are measures of similarity between the text descriptions of entities.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s