This will be the first of 2 assignments this semester. You will find 2 files to download.

1) zipIncomeAssignment.csv is the dataset file you will use for the asignment.

2) ITS836 Assignment 1.docx is the actual assignment instructions.

Note: When you read through the docx file, you’ll notice that some words are in **bold. **That was intentional. Consider those words very strong hints to the solution.

This assignment is worth 20 points (20% of your final grade.) You will use R to perform basic data analysis on the supplied dataset. Please refer to the discussion forum for additional information.

Please note that questions #8 and #9 will likely be quite challenging. I want you to discuss challenges and strategies in the discussion forum. Don’t just give up the answers to other students if you figure out how to solve the problems, but try to offer insights and answer other students’ questions when you can. I’ll be in on the discussion as well. The point is for each of you to learn about R. The best way to get there is to encounter some challenges and collaborate to resolve them. I look at questions #8 and #9 as opportunities to learn more about R, not ways for me to count off points. I’m interested in the outcome.

Of course, you will need a functioning R implementation to do this exercise. See the discussion forum for more details if you need to acquire R.

**ITS836 Assignment 1: Data Analysis in R**

1)**Read** the income dataset, “zipIncomeAssignment.csv”, into R. (You can find the csv file in iLearn under the Content -> Week 2 folder.)

2)Change the column **names** of your data frame so that *zcta* becomes *zipCode* and *meanhouseholdincome* becomes *income*.

3)Analyze the **summary** of your data. What are the mean and median average incomes?

4)**Plot** a scatter plot of the data. Although this graph is not too informative, do you see any outlier values? If so, what are they?

5)In order to omit outliers, create a **subset** of the data so that:

$7,000 < income < $200,000 (or in R syntax , income > 7000 & income < 200000)

6)What’s your new mean?

7)Create a simple **box plot** of your data. Be sure to add a title and label the axes.

HINT: Take a look at: https://www.tutorialspoint.com/r/r_boxplots.htm (specifically, Creating the Boxplot.) Instead of “mpg ~ cyl”, you want to use “income ~ zipCode”.

In the box plot you created, notice that all of the income data is pushed towards the bottom of the graph because most average incomes tend to be low. Create a new box plot where the y-axis uses a log scale. Be sure to add a title and label the axes. For the next 2 questions, use the *ggplot* library in R, which enables you to create graphs with several different types of plots layered over each other.

8)Make a *ggplot* that consists of just a scatter plot using the function *geom_point()* with position = “*jitter” * so that the data points are grouped by zip code. Be sure to use *ggplot*’s function for taking the log_{10} of the y-axis data. (Hint: for *geom_point*, have *alpha*=0.2).

9)Create a new *ggplot* by adding a box plot layer to your previous graph. To do this, add the* ggplot *function *geom_boxplot()*. Also, add color to the scatter plot so that data points between different zip codes are different colors. Be sure to label the axes and add a title to the graph. (Hint: for *geom_boxplot*, have *alpha*=0.1 and *outlier.size*=0).

10) What can you conclude from this data analysis/visualization?

## Recent Comments