1º Bimestre
library(readr)
notas <- read_delim("notas.CSV",
";", escape_double = FALSE, col_types = cols(notas = col_number()),
trim_ws = TRUE)
notas$notas <-notas$notas/10
library(psych)
table(notas)
turma
notas ENG_2A ENG_2B
0 0 1
1 1 1
2 0 2
2.5 1 2
3 2 4
3.5 3 3
4 4 6
4.5 2 8
5 6 4
5.5 10 9
6 5 5
6.5 7 7
7 4 4
7.5 7 3
7.7 1 0
8 3 6
8.5 2 4
9 4 0
9.5 3 1
10 11 4
library("graphics")
### Mosaic plot of observed values
mosaicplot(table(notas), las=2, col="steelblue",
main = "Tabulação das notas")

describeBy(notas$notas, notas$turma)
Descriptive statistics by group
group: ENG_2A
vars n mean sd median trimmed mad min max range skew kurtosis se
X1 1 76 6.7 2.2 6.5 6.76 2.22 1 10 9 -0.09 -0.75 0.25
--------------------------------------------------------
group: ENG_2B
vars n mean sd median trimmed mad min max range skew kurtosis se
X1 1 74 5.67 2.19 5.5 5.67 2.22 0 10 10 -0.02 -0.35 0.25
library(ggplot2)
Need help getting started? Try the cookbook for R:
http://www.cookbook-r.com/Graphs/
Attaching package: 㤼㸱ggplot2㤼㸲
The following objects are masked from 㤼㸱package:psych㤼㸲:
%+%, alpha
a <- ggplot(notas, aes(x = notas))
#histogram Eng
# Position adjustment: "identity" (overlaid)
a + geom_histogram(breaks=seq(0,10,1),aes(color = turma), fill = "white", alpha = 0.4,position="identity", closed = c("left"))+
scale_x_continuous(limits = c(0,10), breaks=seq(0,10,1))+
theme_minimal()+
xlab("Notas")+
ylab("Frequência")+
ggtitle("Histograma por turmas (Eng 2A e 2B)")

#histogram Eng
plot <- ggplot(data=notas, aes(x=notas)) + geom_histogram(breaks=seq(0,10,1),fill="royalblue", colour="black", alpha=.4, closed = c("left"))
plot <- plot + xlab("Notas")+
ylab("Frequência")+
ggtitle("Histograma das turmas Eng 2A e 2B")+
theme(plot.title=element_text(size=rel(1), lineheight=.9,face="bold.italic", colour="black"))+
theme(axis.title=element_text(size=12, lineheight=.9, face="bold", colour="black"))+
stat_bin(bins=10, binwidth = 1,breaks=seq(0,10,1), geom="text", aes(label=..count..), vjust=-1, closed = c("left"))+ scale_x_continuous(limits = c(0,10), breaks=seq(0,10,1))+
scale_y_continuous(expand = c(0,0),limits = c(0,max(ggplot_build(plot)$data[[1]]$count)*1.1), breaks=seq(0,max(ggplot_build(plot)$data[[1]]$count)*1.1,10))
plot

a + geom_dotplot(aes(fill = turma),binpositions = "all")+
theme_minimal()

# Box plot with mean points
e <- ggplot(notas, aes(x = turma, y = notas))
e + geom_boxplot(aes(color = turma,fill = turma)) +
stat_summary(fun.y = mean, geom = "point",
shape = 18, size = 4, color = "blue")+
scale_color_brewer(palette="Dark2")+
theme_minimal()

# Change point colors by dose (groups)
e + geom_jitter(aes(color = turma), position = position_jitter(0.3)) +
theme_minimal()

LS0tDQp0aXRsZTogIlByb2JhYmlsaWRhZGUgZSBFc3RhdMOtc3RpY2EgLSBFbmdlbmhhcmlhIDLCuiBhbm8gLSBBRURCIg0KYXV0aG9yOiAiUHJvZiBEci4gUm9iZXJ0byBDYW1wb3MgTGVvbmkiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojIyMgUmVzdWx0YWRvIGRhIGF2YWxpYcOnw6NvIGRlIFByb2JhYmlsaWRhZGUgZSBFc3RhdMOtc3RpY2EgLSBFbmdlbmhhcmlhIDJBIGUgMkIgLSBBRURCDQojIyMgMcK6IEJpbWVzdHJlDQoNCioqKg0KYGBge3J9DQpsaWJyYXJ5KHJlYWRyKQ0Kbm90YXMgPC0gcmVhZF9kZWxpbSgibm90YXMuQ1NWIiwgDQogICAgIjsiLCBlc2NhcGVfZG91YmxlID0gRkFMU0UsIGNvbF90eXBlcyA9IGNvbHMobm90YXMgPSBjb2xfbnVtYmVyKCkpLCANCiAgICB0cmltX3dzID0gVFJVRSkNCg0Kbm90YXMkbm90YXMgPC1ub3RhcyRub3Rhcy8xMA0KYGBgDQoNCmBgYHtyfQ0KbGlicmFyeShwc3ljaCkNCnRhYmxlKG5vdGFzKQ0KDQpsaWJyYXJ5KCJncmFwaGljcyIpDQojIyMgTW9zYWljIHBsb3Qgb2Ygb2JzZXJ2ZWQgdmFsdWVzDQptb3NhaWNwbG90KHRhYmxlKG5vdGFzKSwgIGxhcz0yLCBjb2w9InN0ZWVsYmx1ZSIsDQogICAgICAgICAgIG1haW4gPSAiVGFidWxhw6fDo28gZGFzIG5vdGFzIikNCg0KZGVzY3JpYmVCeShub3RhcyRub3Rhcywgbm90YXMkdHVybWEpDQoNCg0KYGBgDQoNCmBgYHtyfQ0KbGlicmFyeShnZ3Bsb3QyKQ0KYSA8LSBnZ3Bsb3Qobm90YXMsIGFlcyh4ID0gbm90YXMpKQ0KDQojaGlzdG9ncmFtIEVuZw0KIyBQb3NpdGlvbiBhZGp1c3RtZW50OiAiaWRlbnRpdHkiIChvdmVybGFpZCkNCmEgKyBnZW9tX2hpc3RvZ3JhbShicmVha3M9c2VxKDAsMTAsMSksYWVzKGNvbG9yID0gdHVybWEpLCBmaWxsID0gIndoaXRlIiwgYWxwaGEgPSAwLjQscG9zaXRpb249ImlkZW50aXR5IiwgY2xvc2VkID0gYygibGVmdCIpKSsNCiAgc2NhbGVfeF9jb250aW51b3VzKGxpbWl0cyA9IGMoMCwxMCksIGJyZWFrcz1zZXEoMCwxMCwxKSkrDQogIHRoZW1lX21pbmltYWwoKSsNCiAgeGxhYigiTm90YXMiKSsNCiAgeWxhYigiRnJlcXXDqm5jaWEiKSsNCiAgZ2d0aXRsZSgiSGlzdG9ncmFtYSBwb3IgdHVybWFzIChFbmcgMkEgZSAyQikiKQ0KICANCiNoaXN0b2dyYW0gRW5nDQpwbG90IDwtIGdncGxvdChkYXRhPW5vdGFzLCBhZXMoeD1ub3RhcykpICsgZ2VvbV9oaXN0b2dyYW0oYnJlYWtzPXNlcSgwLDEwLDEpLGZpbGw9InJveWFsYmx1ZSIsIGNvbG91cj0iYmxhY2siLCBhbHBoYT0uNCwgY2xvc2VkID0gYygibGVmdCIpKQ0KDQpwbG90IDwtIHBsb3QgKyB4bGFiKCJOb3RhcyIpKw0KICB5bGFiKCJGcmVxdcOqbmNpYSIpKw0KICBnZ3RpdGxlKCJIaXN0b2dyYW1hIGRhcyB0dXJtYXMgRW5nIDJBIGUgMkIiKSsNCiAgdGhlbWUocGxvdC50aXRsZT1lbGVtZW50X3RleHQoc2l6ZT1yZWwoMSksIGxpbmVoZWlnaHQ9LjksZmFjZT0iYm9sZC5pdGFsaWMiLCBjb2xvdXI9ImJsYWNrIikpKw0KICB0aGVtZShheGlzLnRpdGxlPWVsZW1lbnRfdGV4dChzaXplPTEyLCBsaW5laGVpZ2h0PS45LCBmYWNlPSJib2xkIiwgY29sb3VyPSJibGFjayIpKSsNCiAgc3RhdF9iaW4oYmlucz0xMCwgYmlud2lkdGggPSAxLGJyZWFrcz1zZXEoMCwxMCwxKSwgZ2VvbT0idGV4dCIsIGFlcyhsYWJlbD0uLmNvdW50Li4pLCB2anVzdD0tMSwgY2xvc2VkID0gYygibGVmdCIpKSsgc2NhbGVfeF9jb250aW51b3VzKGxpbWl0cyA9IGMoMCwxMCksIGJyZWFrcz1zZXEoMCwxMCwxKSkrDQogIHNjYWxlX3lfY29udGludW91cyhleHBhbmQgPSBjKDAsMCksbGltaXRzID0gYygwLG1heChnZ3Bsb3RfYnVpbGQocGxvdCkkZGF0YVtbMV1dJGNvdW50KSoxLjEpLCAgYnJlYWtzPXNlcSgwLG1heChnZ3Bsb3RfYnVpbGQocGxvdCkkZGF0YVtbMV1dJGNvdW50KSoxLjEsMTApKSANCnBsb3QNCg0KDQoNCmEgKyBnZW9tX2RvdHBsb3QoYWVzKGZpbGwgPSB0dXJtYSksYmlucG9zaXRpb25zID0gImFsbCIpKw0KICB0aGVtZV9taW5pbWFsKCkNCg0KDQojIEJveCBwbG90IHdpdGggbWVhbiBwb2ludHMNCmUgPC0gZ2dwbG90KG5vdGFzLCBhZXMoeCA9IHR1cm1hLCB5ID0gbm90YXMpKQ0KZSArIGdlb21fYm94cGxvdChhZXMoY29sb3IgPSB0dXJtYSxmaWxsID0gdHVybWEpKSArDQpzdGF0X3N1bW1hcnkoZnVuLnkgPSBtZWFuLCBnZW9tID0gInBvaW50IiwNCnNoYXBlID0gMTgsIHNpemUgPSA0LCBjb2xvciA9ICJibHVlIikrDQogIHNjYWxlX2NvbG9yX2JyZXdlcihwYWxldHRlPSJEYXJrMiIpKw0KICB0aGVtZV9taW5pbWFsKCkNCg0KIyBDaGFuZ2UgcG9pbnQgY29sb3JzIGJ5IGRvc2UgKGdyb3VwcykNCmUgKyBnZW9tX2ppdHRlcihhZXMoY29sb3IgPSB0dXJtYSksIHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyKDAuMykpICsNCnRoZW1lX21pbmltYWwoKQ0KDQpgYGANCg==