Você está na página 1de 4

Lista de Exercícios 2

Gabriela Araújo Santos

07/05/2022

Funções no R

Exercício 1

vetor = vector()
seqrep = function(n){
for (i in 1:n){
vetor = c(vetor, rep(i,i))
}
return(vetor)
}
length(seqrep(50))

## [1] 1275

Exercício 2

maiores = function(x){
media = mean(x)
maior = vector()
menor = vector()
for (i in 1:length(x)){
if(x[i]>media)
maior = c(maior, x[i])
}
return(maior)
}

Exercício 3

x = seqrep(10)
print(maiores(x))

## [1] 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10
## [26] 10 10

1
Exercício 4

soma = 0

for (i in 10:20){
a = iˆ2 + (4/i)
soma = soma + a
}
print(soma)

## [1] 2588.075

Exercício 5

soma = 0

for (i in 1:10){
for (j in 1:10) {
a = (iˆ2)/(5 + (i*j))
soma = soma + a
}
}

print(soma)

## [1] 117.4334

Exercício 6

A função trunc() retorna o número truncado, isto é, sem casas decimais. A função floor() retorna o
menor inteiro mais próximo. Já a função ceiling() retorna o maior inteiro mais próximo. Por fim, a função
round() arredonda o número para o número mais próximo, com o número de casas decimais especificado na
função.

## [1] 0 0 0 0 0 0 1

## [1] -1 0 0 0 0 0 1

## [1] 0 1 1 1 1 1 2

## [1] 0 0 0 0 1 1 1

Exercício 7

set.seed(1)
x = runif(20,-1,1)
y = ifelse(x>0, log(x), "NA")
print(y)

2
## [1] "NA" "NA" "-1.92615939866692"
## [4] "-0.202831764458878" "NA" "-0.22717746419227"
## [7] "-0.117263816112143" "-1.13446047008719" "-1.35391202338085"
## [10] "NA" "NA" "NA"
## [13] "-0.983377314389769" "NA" "-0.616773645310288"
## [16] "NA" "-0.831864530695256" "-0.0163202643124511"
## [19] "NA" "-0.588984585371164"

Exercício 8

vec = vector()

for (i in 1:100){
v = paste("Seq", i, sep = "")
vec = c(vec, v)
}
vec

## [1] "Seq1" "Seq2" "Seq3" "Seq4" "Seq5" "Seq6" "Seq7" "Seq8"


## [9] "Seq9" "Seq10" "Seq11" "Seq12" "Seq13" "Seq14" "Seq15" "Seq16"
## [17] "Seq17" "Seq18" "Seq19" "Seq20" "Seq21" "Seq22" "Seq23" "Seq24"
## [25] "Seq25" "Seq26" "Seq27" "Seq28" "Seq29" "Seq30" "Seq31" "Seq32"
## [33] "Seq33" "Seq34" "Seq35" "Seq36" "Seq37" "Seq38" "Seq39" "Seq40"
## [41] "Seq41" "Seq42" "Seq43" "Seq44" "Seq45" "Seq46" "Seq47" "Seq48"
## [49] "Seq49" "Seq50" "Seq51" "Seq52" "Seq53" "Seq54" "Seq55" "Seq56"
## [57] "Seq57" "Seq58" "Seq59" "Seq60" "Seq61" "Seq62" "Seq63" "Seq64"
## [65] "Seq65" "Seq66" "Seq67" "Seq68" "Seq69" "Seq70" "Seq71" "Seq72"
## [73] "Seq73" "Seq74" "Seq75" "Seq76" "Seq77" "Seq78" "Seq79" "Seq80"
## [81] "Seq81" "Seq82" "Seq83" "Seq84" "Seq85" "Seq86" "Seq87" "Seq88"
## [89] "Seq89" "Seq90" "Seq91" "Seq92" "Seq93" "Seq94" "Seq95" "Seq96"
## [97] "Seq97" "Seq98" "Seq99" "Seq100"

Base de Dados

Exercíco 9

nlinhas = dim(accident)[1]
soma = sum(accident$Freq)
cat(" O banco de dados tem", nlinhas, "linhas.","\n",
"No total foram registrados", soma, "acidentes")

## O banco de dados tem 72 linhas.


## No total foram registrados 1052 acidentes

Exercíco 10

mediaun = mean(accident$Freq[accident$Type=="uncertain"])
cat("Para acidentes do tipo uncertain, a média de frequência é", round(mediaun,2))

3
## Para acidentes do tipo uncertain, a média de frequência é 24.08

avoidable = subset(accident, accident$Type == "avoidable")


head(avoidable[order(-avoidable$Freq),])[1,]

## Type Time Age Hour Freq


## 14 avoidable 0 |-- 7 26 -- 45 morning 51

Você também pode gostar