add code.org to intro and fix typo
[wiki.git] / r.mdwn
1 Inspired by https://canvas.harvard.edu/courses/5749/assignments/syllabus (STAT E-100, Fall 2015)
2
3     > options(warn=-1) # warnings from `library` are annoying
4     > options(device="png") # instead of Rplots.pdf
5     > out <- capture.output(suppressMessages(library("mosaic")))
6     > # conduct analyses of Titanic data
7     > # frequency table of counts with marginal totals
8     > tally(~Survived, format = "count", data = Titanic, margins = TRUE)
9
10        No   Yes Total 
11       618   427  1045 
12     > # bar graph of survival
13     > bargraph(~Survived, data = Titanic)
14
15 <img src="titanic/Rplot001.png">
16
17     > # frequency table of propotions with marginal totals
18     > tally(~Survived, format = "proportion", data = Titanic, margins = TRUE)
19
20        No   Yes Total 
21      0.59  0.41  1.00 
22     > # frequency table of percentages with marginal totals
23     > tally(~Survived, format = "percent", data = Titanic, margins = TRUE)
24
25        No   Yes Total 
26        59    41   100 
27     > # pie chart of survival
28     > pie(tally(~Survived, format = "count", data = Titanic))
29
30 <img src="titanic/Rplot002.png">
31
32     > # contingency table of counts
33     > tally(~Class + Survived, format = "count", margins=TRUE, data = Titanic)
34             Survived
35     Class      No  Yes Total
36       Lower   369  131   500
37       Middle  146  115   261
38       Upper   103  181   284
39       Total   618  427  1045
40     > # contingency table of proportions without conditioning
41     > tally(~Class + Survived, format = "proportion", margins=TRUE, data = Titanic)
42             Survived
43     Class       No   Yes Total
44       Lower  0.353 0.125 0.478
45       Middle 0.140 0.110 0.250
46       Upper  0.099 0.173 0.272
47       Total  0.591 0.409 1.000
48     > # contingency table of percentages without conditioning,
49     > tally(~Class + Survived, format = "percent", margins=TRUE, data = Titanic)
50             Survived
51     Class       No   Yes Total
52       Lower   35.3  12.5  47.8
53       Middle  14.0  11.0  25.0
54       Upper    9.9  17.3  27.2
55       Total   59.1  40.9 100.0
56     > # conditioning on survival
57     > # Of those who survived, what percentage were in the lower class? (31%)
58     > tally(~Class | Survived, format = "percent", data = Titanic, margins=TRUE)
59             Survived
60     Class     No Yes
61       Lower   60  31
62       Middle  24  27
63       Upper   17  42
64       Total  100 100
65     > # conditioning on passenger class
66     > # Of those in the lower class, what percent survived? (26%)
67     > tally(~Survived | Class, format = "percent", data = Titanic, margins=TRUE)
68             Class
69     Survived Lower Middle Upper
70        No       74     56    36
71        Yes      26     44    64
72        Total   100    100   100
73     > # Dodged Bar Graph: Survival with Class Subgroups
74     > bargraph(~Survived, groups=Class, auto.key=TRUE, data=Titanic)
75
76 <img src="titanic/Rplot003.png">
77
78     > # Dodged Bar Graph: Class with Survival Subgroups
79     > bargraph(~Class, groups=Survived, auto.key=TRUE, data=Titanic)
80
81 <img src="titanic/Rplot004.png">
82
83     > # Stacked Bar Graph: Survival with Class Subgroups
84     > bargraph(~Survived, groups=Class, auto.key=TRUE, stack=TRUE, data=Titanic)
85
86 <img src="titanic/Rplot005.png">
87
88     > # Stacked Bar Graph: Class with Survival Subgroups
89     > bargraph(~Class, groups=Survived, auto.key=TRUE, stack=TRUE, data=Titanic)
90
91 <img src="titanic/Rplot006.png">
92
93     > # Unconditional Distribution of Survival and Conditional Distributions of Class
94     > mosaicplot(~Survived + Class, color=TRUE, data=Titanic)
95
96 <img src="titanic/Rplot007.png">
97
98     > # Distributions of class conditional on survival
99     > tally(~Class | Survived, format = "percent", data = Titanic, margins=TRUE)
100             Survived
101     Class     No Yes
102       Lower   60  31
103       Middle  24  27
104       Upper   17  42
105       Total  100 100
106     > # Unconditional Distribution of Class and Conditional Distributions of Survival
107     > mosaicplot(~Class + Survived, color=TRUE, data=Titanic)
108
109 <img src="titanic/Rplot008.png">
110
111     > # Distributions of survival conditional on class
112     > tally(~Survived | Class, format = "percent", data = Titanic, margins=TRUE)
113             Class
114     Survived Lower Middle Upper
115        No       74     56    36
116        Yes      26     44    64
117        Total   100    100   100