Introduction to Statistics (MAT/SST 115.03 2008S)
Primary: [Front Door] [Syllabus] [Current Outline] [R] - [Academic Honesty] [Instructions]
Groupings: [Applets] [Assignments] [Data] [Examples] [Handouts] [Labs] [Outlines] [Projects] [Readings] [Solutions]
External Links: [R Front Door] [SamR's Front Door]
We'll be learning a bit more of R in this exercise. In particular, we'll think about ways to create new columns in a data frame and revisit ways to select rows from a data frame.
To read in the initial Fan Cost Index table, use
FanCost = read.csv("/home/rebelsky/Stats115/Data/FanCost06.csv")
You can get a look at the first few lines of the table with
head(FanCost)
As that summary suggests, the columns are
Team
,
Adult
,
Child
,
Parking
,
Program
,
Cap
,
Beer
,
Beer.Oz
,
Soda
,
Soda.Oz
, and
Hot Dog
.
This exercise asks you to create a new column in the table. You can create a new column in a table by referring to it. If the column is based on other columns, you use the appropriate formula to compute it. For example, if FCI were based on one adult ticket and three children's tickets, you would write
FanCost$FCI = FanCost$Adult + 2*FanCost$Child
You can see that the new column is added with head
.
It is, of course, left to the reader to figure out what formula to use for the FCI reported in the book. (If you can't figure it out, it is reproduced at the end of this section.)
Next, this exercise asks you to find the team with the highest and lowest fan cost. You should start by finding out those values.
max(FanCost$FCI) min(FanCost$FCI)
Now, how do we figure out which teams correspond to those numbers. We
can look at the data (just type FanCost
). We can look at
just the columns that correspond to the data.
FanCost[,c(1,12)]
or
data.frame(City=FanCost$Team,FCI=FanCost$FCI)
However, our best bet is to get R to search for us.
FanCost[FanCost$FCI == max(FanCost$FCI), ] FanCost[FanCost$FCI == min(FanCost$FCI), ]
I'm not sure why the book asks for a dotplot, rather than a boxplot, but, hey, we'll do both.
library(BHH2, lib="/home/rebelsky/Stats115/Packages") dotPlot(FanCost$FCI) X11() boxplot(FanCost$FCI, horizontal=T)
Just in case it wasn't clear, you can use a similar technique for computing price per ounce that you used for computing FPI and MCI.
FanCost$SodaPPO = FanCost$Soda/FanCost$Soda.Oz FanCost[FanCost$SodaPPO==max(FanCost$SodaPPO),] FanCost[FanCost$SodaPPO==min(FanCost$SodaPPO),]
If you could not figure out the formula for FCI, here it is.
FanCost$FCI = 2*FanCost$Adult + 2*FanCost$Child + FanCost$Park + 2*FanCost$Program + 2*FanCost$Cap + 2*FanCost$Beer + 4*FanCost$Soda + 2*FanCost$HotDog
Primary: [Front Door] [Syllabus] [Current Outline] [R] - [Academic Honesty] [Instructions]
Groupings: [Applets] [Assignments] [Data] [Examples] [Handouts] [Labs] [Outlines] [Projects] [Readings] [Solutions]
External Links: [R Front Door] [SamR's Front Door]
Copyright (c) 2007-8 Samuel A. Rebelsky.
This work is licensed under a Creative Commons
Attribution-NonCommercial 2.5 License. To view a copy of this
license, visit http://creativecommons.org/licenses/by-nc/2.5/
or send a letter to Creative Commons, 543 Howard Street, 5th Floor,
San Francisco, California, 94105, USA.