Instalar Software R, disponível em http://www.r-project.org.
(Opcional) Instalar software RStudio (versão gratuída), disponível em https://posit.co/
Considere os dados disponíveis abaixo, referentes ao peso (em Kg) de 40 bicicletas:
4.3 | 6.8 | 9.2 | 7.2 | 8.7 | 8.6 | 6.6 | 5.2 | 8.1 | 10.9
7.4 | 4.5 | 3.8 | 7.6 | 6.8 | 7.8 | 8.4 | 7.5 | 10.5 | 6.0
7.7 | 8.1 | 7.0 | 8.2 | 8.4 | 8.8 | 6.7 | 8.2 | 9.4 | 7.7
6.3 | 7.7 | 9.1 | 7.9 | 7.9 | 9.4 | 8.2 | 6.7 | 8.2 | 6.5
peso = c(4.3,6.8,9.2,7.2,8.7,8.6,6.6,5.2,8.1,10.9,7.4,4.5,3.8,7.6,6.8,7.8,8.4,7.5,10.5,6.0,7.7,8.1,7.0,8.2,8.4,8.8,6.7,8.2,9.4,7.7, 6.3,7.7,9.1,7.9,7.9,9.4,8.2,6.7,8.2,6.5)
mean(peso)
## [1] 7.6
median(peso)
## [1] 7.75
var(peso)
## [1] 2.265128
sd(peso)
## [1] 1.505034
summary(peso)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 3.800 6.775 7.750 7.600 8.400 10.900
quantile(peso,c(0.25,0.5,0.75))
## 25% 50% 75%
## 6.775 7.750 8.400
IQR(peso)
## [1] 1.625
quantile(peso,type=1)
## 0% 25% 50% 75% 100%
## 3.8 6.7 7.7 8.4 10.9
quantile(peso,type=2)
## 0% 25% 50% 75% 100%
## 3.80 6.75 7.75 8.40 10.90
quantile(peso,0.68)
## 68%
## 8.2
?quantile
## starting httpd help server ... done
stem(peso)
##
## The decimal point is at the |
##
## 3 | 8
## 4 | 35
## 5 | 2
## 6 | 03567788
## 7 | 02456777899
## 8 | 11222244678
## 9 | 1244
## 10 | 59
par(mfrow=c(1,2))
hist(peso, col="blue")
boxplot(peso, col="red", main="Boxplot of peso")
dev.off()
## null device
## 1
?hist
?boxplot
A taxa de mortalidade infantil corresponde ao número médio de mortes, de entre 1000 crianças nascidas vivas, antes de completarem um ano de vida. Os dados referentes à União Europeia (UE), relativos aos anos de 1960 até 2019 estão disponíveis em https://www.pordata.pt/Europa/Taxa+de+mortalidade+infantil-1589
rm(list=ls())
#setwd("C:/Privado/Disciplinas/PE/Exercicios/")
# https://www.math.tecnico.ulisboa.pt/~gsilva/PE_Ex1.3.csv
mortdata <-read.csv("PE_Ex1.3.csv",sep=";", header=TRUE)
dim(mortdata)
## [1] 60 35
head(mortdata)
## Ano UE27 UE28 ZE19 DE AT BE BG CY HR DK SK SI ES EE FI
## 1 1960 NA NA NA 33.8 37.5 31.4 45.1 NA 70.4 21.5 28.6 35.1 35.4 31.1 21.0
## 2 1961 38.2 36.2 34.8 31.7 32.7 28.1 37.8 40 62.9 21.8 27.8 29.4 37.3 28.0 20.8
## 3 1962 36.5 34.7 33.3 29.3 32.8 27.5 37.3 38 59.4 20.1 25.5 30.0 32.4 25.2 20.5
## 4 1963 34.4 32.8 31.9 27.0 31.3 27.2 35.7 36 56.4 19.1 26.2 29.6 31.7 26.0 18.2
## 5 1964 32.0 30.5 29.7 25.3 29.2 25.3 32.9 34 53.5 18.7 25.6 28.1 30.8 25.4 17.0
## 6 1965 30.1 28.8 28.4 23.9 28.3 23.7 30.8 32 49.5 18.7 28.5 29.6 29.4 20.3 17.6
## FR GR HU IE IT LV LT LU MT NL PL PT CZ RO SE
## 1 27.7 40.1 47.6 29.3 43.9 27.0 38.0 31.5 38.3 16.5 56.1 77.5 20.0 75.7 16.6
## 2 26.0 39.8 44.1 30.5 40.7 24.1 35.4 26.2 31.8 15.4 54.1 88.8 19.3 71.4 15.8
## 3 26.1 40.3 47.9 29.1 41.8 24.2 36.3 31.1 35.0 15.3 54.8 78.6 21.1 60.3 15.4
## 4 25.8 39.3 42.9 26.6 40.1 25.9 35.1 28.6 34.2 15.8 50.5 73.1 19.7 55.2 15.4
## 5 23.7 35.8 40.0 26.7 36.1 22.0 29.9 29.8 34.3 14.8 49.5 69.0 19.1 48.6 14.2
## 6 22.4 34.3 38.8 25.2 36.0 18.9 24.7 24.0 34.8 14.4 41.6 64.9 23.7 44.1 13.3
## IS NO UK CH
## 1 13.0 16.0 22.5 21.1
## 2 19.5 15.6 22.1 21.0
## 3 17.0 15.3 22.3 21.2
## 4 17.0 14.5 21.8 20.5
## 5 17.5 14.6 20.6 19.0
## 6 15.0 14.6 19.6 17.8
colnames(mortdata)
## [1] "Ano" "UE27" "UE28" "ZE19" "DE" "AT" "BE" "BG" "CY" "HR"
## [11] "DK" "SK" "SI" "ES" "EE" "FI" "FR" "GR" "HU" "IE"
## [21] "IT" "LV" "LT" "LU" "MT" "NL" "PL" "PT" "CZ" "RO"
## [31] "SE" "IS" "NO" "UK" "CH"
#install.packages("psych")
library("psych")
describe(mortdata)
## vars n mean sd median trimmed mad min max range skew
## Ano 1 60 1989.50 17.46 1989.50 1989.50 22.24 1960.0 2019.0 59.0 0.00
## UE27 2 59 13.59 10.03 10.70 12.51 9.64 3.4 38.2 34.8 0.83
## UE28 3 58 13.37 9.54 10.55 12.38 9.27 3.5 36.2 32.7 0.77
## ZE19 4 59 11.71 9.35 7.90 10.54 6.67 3.2 34.8 31.6 0.96
## DE 5 60 11.38 9.00 7.20 10.26 5.63 3.2 33.8 30.6 0.85
## AT 6 60 12.52 10.14 7.95 11.28 6.97 2.7 37.5 34.8 0.82
## BE 7 60 11.07 8.05 8.40 9.99 6.82 3.2 31.4 28.2 0.88
## BG 8 60 18.14 9.35 15.55 17.26 9.56 5.6 45.1 39.5 0.79
## CY 9 59 13.21 10.38 12.90 12.03 12.01 1.3 40.0 38.7 0.91
## HR 10 60 18.76 17.00 11.65 15.62 10.67 3.6 70.4 66.8 1.37
## DK 11 60 8.46 5.28 7.55 7.66 4.67 3.0 21.8 18.8 1.06
## SK 12 60 14.86 8.21 13.25 14.54 11.12 4.5 28.6 24.1 0.25
## SI 13 60 12.16 9.77 8.65 11.19 9.19 1.6 35.1 33.5 0.65
## ES 14 60 11.50 9.73 7.70 9.94 6.82 2.6 37.3 34.7 1.11
## EE 15 60 12.78 7.33 14.60 12.47 6.82 1.6 31.1 29.5 0.16
## FI 16 60 7.26 5.44 5.80 6.43 4.67 1.7 21.0 19.3 1.08
## FR 17 60 9.93 7.25 7.40 8.80 5.34 3.5 27.7 24.2 1.05
## GR 18 60 14.89 12.09 9.70 13.43 8.90 2.7 40.3 37.6 0.79
## HU 19 60 18.96 13.57 15.65 17.77 14.83 3.3 47.9 44.6 0.57
## IE 20 60 11.02 8.19 8.00 9.91 6.75 2.8 30.5 27.7 0.92
## IT 21 60 13.98 12.65 8.40 12.16 8.15 2.4 43.9 41.5 0.96
## LV 22 60 13.55 6.00 15.15 13.49 5.71 3.2 27.0 23.8 0.00
## LT 23 60 13.82 8.59 12.95 12.68 7.78 3.0 38.0 35.0 1.05
## LU 24 60 10.79 8.39 8.50 9.58 6.82 1.8 31.5 29.7 1.04
## MT 25 60 13.84 9.68 9.85 12.37 6.52 3.7 38.3 34.6 1.07
## NL 26 60 7.91 3.96 6.80 7.52 4.08 3.3 16.5 13.2 0.65
## PL 27 60 20.06 14.66 19.35 18.20 16.98 3.8 56.1 52.3 0.81
## PT 28 60 23.44 24.73 11.50 19.54 12.31 2.5 88.8 86.3 1.07
## CZ 29 60 11.17 7.32 10.60 10.91 11.27 2.4 23.7 21.3 0.15
## RO 30 60 27.38 16.66 23.65 25.52 13.64 5.8 75.7 69.9 0.92
## SE 31 60 6.60 4.21 5.85 6.09 4.30 2.0 16.6 14.6 0.81
## IS 32 60 6.74 5.04 5.50 6.19 4.89 0.7 19.5 18.8 0.78
## NO 33 60 7.01 4.13 7.20 6.59 5.26 2.1 16.0 13.9 0.58
## UK 34 59 10.83 6.43 8.40 10.41 6.52 3.8 22.5 18.7 0.45
## CH 35 60 8.53 5.45 6.80 7.70 4.00 3.3 21.2 17.9 1.06
## kurtosis se
## Ano -1.26 2.25
## UE27 -0.53 1.31
## UE28 -0.66 1.25
## ZE19 -0.39 1.22
## DE -0.70 1.16
## AT -0.76 1.31
## BE -0.50 1.04
## BG -0.13 1.21
## CY -0.13 1.35
## HR 0.95 2.19
## DK 0.01 0.68
## SK -1.54 1.06
## SI -0.94 1.26
## ES 0.08 1.26
## EE -0.66 0.95
## FI 0.05 0.70
## FR -0.22 0.94
## GR -0.78 1.56
## HU -1.06 1.75
## IE -0.44 1.06
## IT -0.49 1.63
## LV -0.73 0.78
## LT 0.80 1.11
## LU -0.04 1.08
## MT -0.13 1.25
## NL -0.89 0.51
## PL -0.19 1.89
## PT -0.19 3.19
## CZ -1.61 0.95
## RO 0.33 2.15
## SE -0.52 0.54
## IS -0.57 0.65
## NO -0.82 0.53
## UK -1.42 0.84
## CH -0.23 0.70
summary(mortdata)
## Ano UE27 UE28 ZE19 DE
## Min. :1960 Min. : 3.40 Min. : 3.50 Min. : 3.20 Min. : 3.20
## 1st Qu.:1975 1st Qu.: 4.95 1st Qu.: 5.15 1st Qu.: 4.00 1st Qu.: 4.05
## Median :1990 Median :10.70 Median :10.55 Median : 7.90 Median : 7.20
## Mean :1990 Mean :13.59 Mean :13.37 Mean :11.71 Mean :11.38
## 3rd Qu.:2004 3rd Qu.:20.25 3rd Qu.:20.43 3rd Qu.:18.15 3rd Qu.:20.12
## Max. :2019 Max. :38.20 Max. :36.20 Max. :34.80 Max. :33.80
## NA's :1 NA's :2 NA's :1
## AT BE BG CY
## Min. : 2.700 Min. : 3.200 Min. : 5.60 Min. : 1.30
## 1st Qu.: 4.175 1st Qu.: 3.975 1st Qu.:11.30 1st Qu.: 3.90
## Median : 7.950 Median : 8.400 Median :15.55 Median :12.90
## Mean :12.515 Mean :11.067 Mean :18.14 Mean :13.21
## 3rd Qu.:21.250 3rd Qu.:16.425 3rd Qu.:24.23 3rd Qu.:16.85
## Max. :37.500 Max. :31.400 Max. :45.10 Max. :40.00
## NA's :1
## HR DK SK SI
## Min. : 3.60 Min. : 3.000 Min. : 4.50 Min. : 1.600
## 1st Qu.: 6.00 1st Qu.: 4.350 1st Qu.: 6.75 1st Qu.: 3.775
## Median :11.65 Median : 7.550 Median :13.25 Median : 8.650
## Mean :18.76 Mean : 8.455 Mean :14.86 Mean :12.160
## 3rd Qu.:23.55 3rd Qu.:10.475 3rd Qu.:23.32 3rd Qu.:19.100
## Max. :70.40 Max. :21.800 Max. :28.60 Max. :35.100
##
## ES EE FI FR
## Min. : 2.60 Min. : 1.600 Min. : 1.700 Min. : 3.500
## 1st Qu.: 3.85 1st Qu.: 5.625 1st Qu.: 3.000 1st Qu.: 3.975
## Median : 7.70 Median :14.600 Median : 5.800 Median : 7.400
## Mean :11.50 Mean :12.780 Mean : 7.258 Mean : 9.927
## 3rd Qu.:16.07 3rd Qu.:17.500 3rd Qu.:10.000 3rd Qu.:14.025
## Max. :37.30 Max. :31.100 Max. :21.000 Max. :27.700
##
## GR HU IE IT
## Min. : 2.700 Min. : 3.30 Min. : 2.800 Min. : 2.400
## 1st Qu.: 4.075 1st Qu.: 6.50 1st Qu.: 4.425 1st Qu.: 3.375
## Median : 9.700 Median :15.65 Median : 8.000 Median : 8.400
## Mean :14.887 Mean :18.96 Mean :11.020 Mean :13.978
## 3rd Qu.:23.925 3rd Qu.:32.90 3rd Qu.:17.575 3rd Qu.:21.625
## Max. :40.300 Max. :47.90 Max. :30.500 Max. :43.900
##
## LV LT LU MT
## Min. : 3.20 Min. : 3.000 Min. : 1.80 Min. : 3.700
## 1st Qu.: 9.10 1st Qu.: 7.175 1st Qu.: 4.30 1st Qu.: 6.675
## Median :15.15 Median :12.950 Median : 8.50 Median : 9.850
## Mean :13.55 Mean :13.822 Mean :10.79 Mean :13.840
## 3rd Qu.:17.70 3rd Qu.:18.125 3rd Qu.:14.20 3rd Qu.:17.100
## Max. :27.00 Max. :38.000 Max. :31.50 Max. :38.300
##
## NL PL PT CZ
## Min. : 3.300 Min. : 3.80 Min. : 2.50 Min. : 2.400
## 1st Qu.: 4.700 1st Qu.: 6.70 1st Qu.: 3.75 1st Qu.: 3.625
## Median : 6.800 Median :19.35 Median :11.50 Median :10.600
## Mean : 7.907 Mean :20.06 Mean :23.44 Mean :11.173
## 3rd Qu.:10.850 3rd Qu.:25.75 3rd Qu.:38.15 3rd Qu.:19.150
## Max. :16.500 Max. :56.10 Max. :88.80 Max. :23.700
##
## RO SE IS NO
## Min. : 5.80 Min. : 2.000 Min. : 0.700 Min. : 2.100
## 1st Qu.:16.27 1st Qu.: 3.025 1st Qu.: 2.400 1st Qu.: 3.200
## Median :23.65 Median : 5.850 Median : 5.500 Median : 7.200
## Mean :27.38 Mean : 6.603 Mean : 6.735 Mean : 7.007
## 3rd Qu.:34.77 3rd Qu.: 8.850 3rd Qu.:11.300 3rd Qu.: 9.275
## Max. :75.70 Max. :16.600 Max. :19.500 Max. :16.000
##
## UK CH
## Min. : 3.80 Min. : 3.300
## 1st Qu.: 5.15 1st Qu.: 4.300
## Median : 8.40 Median : 6.800
## Mean :10.83 Mean : 8.525
## 3rd Qu.:17.35 3rd Qu.:11.150
## Max. :22.50 Max. :21.200
## NA's :1
head(describe(mortdata))
## vars n mean sd median trimmed mad min max range skew
## Ano 1 60 1989.50 17.46 1989.50 1989.50 22.24 1960.0 2019.0 59.0 0.00
## UE27 2 59 13.59 10.03 10.70 12.51 9.64 3.4 38.2 34.8 0.83
## UE28 3 58 13.37 9.54 10.55 12.38 9.27 3.5 36.2 32.7 0.77
## ZE19 4 59 11.71 9.35 7.90 10.54 6.67 3.2 34.8 31.6 0.96
## DE 5 60 11.38 9.00 7.20 10.26 5.63 3.2 33.8 30.6 0.85
## AT 6 60 12.52 10.14 7.95 11.28 6.97 2.7 37.5 34.8 0.82
## kurtosis se
## Ano -1.26 2.25
## UE27 -0.53 1.31
## UE28 -0.66 1.25
## ZE19 -0.39 1.22
## DE -0.70 1.16
## AT -0.76 1.31
mortdata5 = mortdata[c(2,5,14,26,28,34)]
head(mortdata5)
## UE27 DE ES NL PT UK
## 1 NA 33.8 35.4 16.5 77.5 22.5
## 2 38.2 31.7 37.3 15.4 88.8 22.1
## 3 36.5 29.3 32.4 15.3 78.6 22.3
## 4 34.4 27.0 31.7 15.8 73.1 21.8
## 5 32.0 25.3 30.8 14.8 69.0 20.6
## 6 30.1 23.9 29.4 14.4 64.9 19.6
summary(mortdata5)
## UE27 DE ES NL
## Min. : 3.40 Min. : 3.20 Min. : 2.60 Min. : 3.300
## 1st Qu.: 4.95 1st Qu.: 4.05 1st Qu.: 3.85 1st Qu.: 4.700
## Median :10.70 Median : 7.20 Median : 7.70 Median : 6.800
## Mean :13.59 Mean :11.38 Mean :11.50 Mean : 7.907
## 3rd Qu.:20.25 3rd Qu.:20.12 3rd Qu.:16.07 3rd Qu.:10.850
## Max. :38.20 Max. :33.80 Max. :37.30 Max. :16.500
## NA's :1
## PT UK
## Min. : 2.50 Min. : 3.80
## 1st Qu.: 3.75 1st Qu.: 5.15
## Median :11.50 Median : 8.40
## Mean :23.44 Mean :10.83
## 3rd Qu.:38.15 3rd Qu.:17.35
## Max. :88.80 Max. :22.50
## NA's :1
par(mfrow=c(2,3))
boxplot(mortdata[,2], main = "UE27", ylab = "Taxa de mortalidade infantil")
boxplot(mortdata[,5], main = "Alemanha", ylab = "Taxa de mortalidade infantil" )
boxplot(mortdata[,14], main = "Espanha", ylab = "Taxa de mortalidade infantil" )
boxplot(mortdata[,26], main = "Holanda", ylab = "Taxa de mortalidade infantil" )
boxplot(mortdata[,28], main = "Portugal", ylab = "Taxa de mortalidade infantil" )
boxplot(mortdata[,34], main = "Reino Unido", ylab = "Taxa de mortalidade infantil" )
dev.off()
## null device
## 1
# mortdata[2,c(2,5,14,26,28,34)] - dados para os 5 países para o ano de 1961
# mortdata[59,c(2,5,14,26,28,34)] - dados para os 5 países para o ano de 1981
matplot(matrix(c(mortdata[2,c(2,5,14,26,28,34)],mortdata[59,c(2,5,14,26,28,34)]),6,2),type="l", ylab="Taxa media de mortalidade infantil",xlab="1961 e 2018")
print(mortdata[59,c(1:4)])
## Ano UE27 UE28 ZE19
## 59 2018 3.4 3.5 3.3
# apply: aplica uma função arbitrária a um conjunto de dados, incluindo uma matriz
apply(mortdata[59,-c(1:4)],1,mean)
## 59
## 3.358065
# calculamos a mediana com todas as colunas, excepto com a 1ª, que contêm o ano
apply(mortdata[59,-1],1,median)
## 59
## 3.3
apply(mortdata[59,-1],1,var)
## 59
## 1.193948
apply(mortdata[59,-1],1,sd)/apply(mortdata[59,-1],1,mean)
## 59
## 0.3250315
plot(mortdata[,1],mortdata$PT, main="Evolucao da mortalidade infantil em Pt",
ylab="Taxa Media", xlab="anos",col="red", pch=16)# type="l")
points(mortdata[,1],mortdata$UE27, col="blue", pch=16)
leg_cols <- c("red", "blue")
leg_sym <- c(16, 16)
leg_lab <- c("Portugal", "UE")
legend(x = "topright", col = leg_cols, pch = leg_sym, legend = leg_lab, bty = "n")
# https://www.math.tecnico.ulisboa.pt/~gsilva/PE_Ex1.3f.dat
read.table("PE_Ex1.3f.dat", header=TRUE)
## Anos TaxaPIB
## 1 1961 3.58
## 2 1962 10.53
## 3 1963 3.84
## 4 1964 6.05
## 5 1965 9.41
## 6 1966 4.55
## 7 1967 4.15
## 8 1968 5.07
## 9 1969 2.43
## 10 1970 8.47
## 11 1971 10.49
## 12 1972 10.38
## 13 1973 4.92
## 14 1974 2.91
## 15 1975 -5.10
## 16 1976 2.29
## 17 1977 6.02
## 18 1978 6.17
## 19 1979 7.10
## 20 1980 4.76
## 21 1981 2.17
## 22 1982 2.16
## 23 1983 0.97
## 24 1984 -1.04
## 25 1985 1.64
## 26 1986 3.32
## 27 1987 7.63
## 28 1988 5.34
## 29 1989 6.65
## 30 1990 7.86
## 31 1991 3.37
## 32 1992 3.13
## 33 1993 -0.69
## 34 1994 1.49
## 35 1995 2.31
## 36 1996 3.50
## 37 1997 4.40
## 38 1998 4.81
## 39 1999 3.91
## 40 2000 3.82
## 41 2001 1.94
## 42 2002 0.77
## 43 2003 -0.93
## 44 2004 1.79
## 45 2005 0.78
## 46 2006 1.63
## 47 2007 2.51
## 48 2008 0.32
## 49 2009 -3.12
## 50 2010 1.74
## 51 2011 -1.70
## 52 2012 -4.06
## 53 2013 -0.92
## 54 2014 0.79
## 55 2015 1.79
## 56 2016 2.02
## 57 2017 3.51
## 58 2018 2.85
pib2018 <-read.table("PE_Ex1.3f.dat", header=TRUE)$TaxaPIB
plot(pib2018,mortdata$PT[-c(1,60)],xlab="PIB: Taxa de crescimento real", ylab="Taxa media de mortalidade infantil (1961 a 2018)")
cor(pib2018,mortdata$PT[-c(1,60)])
## [1] 0.4915946
R Core Team (2023). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/.
RStudio Team (2023). RStudio: Integrated Development for R. RStudio, PBC, Boston, MA. https://posit.co/.