Bioestatística
Prof. Dr. Edson Zangiacomi Martinez
Faculdade de Medicina de Ribeirão Preto
Universidade de São Paulo (USP)
Esta página está em construção!
Todo seu conteúdo não é definitivo...
Sequências
Repetições
Funções seq(), rep() e sequence()
Sequências de inteiros usando dois pontos (:)
# Os dois pontos : são usados para gerar sequências de números inteiros
1:9
[1] 1 2 3 4 5 6 7 8 9
x <- 23:56 # sequência dos números inteiros de 23 a 56
y <- 56:20 # sequência decrescente de 56 a 20
z <- 1:10+5 # sequência decrescente de 6 a 15
A função seq( )
# seja a sequência dos números inteiros, de 15 a 30:
seq(from=15, to=30)
[1] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
# neste caso, teríamos o mesmo efeito se usássemos:
15:30
[1] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
# para obtermos o mesmo resultado, podemos escrever simplesmente:
seq(15,30)
[1] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
# o argumento by= é usado para gerar sequências com saltos:
seq(from=15, to=30, by=2)
[1] 15 17 19 21 23 25 27 29
# por simplicidade, podemos escrever:
seq(15,30,2)
[1] 15 17 19 21 23 25 27 29
# observe:
seq(1.1,6.4)
[1] 1.1 2.1 3.1 4.1 5.1 6.1
seq(1.1,6.4,0.5)
[1] 1.1 1.6 2.1 2.6 3.1 3.6 4.1 4.6 5.1 5.6 6.1
seq(0,1,0.1)
[1] 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
# observe:
month.abb
[1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"
month.abb[seq(1,12,3)]
[1] "Jan" "Apr" "Jul" "Oct"
# observe:
matrix(seq(1,31,2),nrow=4,byrow=T)
[,1] [,2] [,3] [,4]
[1,] 1 3 5 7
[2,] 9 11 13 15
[3,] 17 19 21 23
[4,] 25 27 29 31
# se usarmos seq(from=a, to=b, length=c), teremos uma sequência de 'a' a 'b',
# com 'c' elementos:
seq(10,20,length=5)
[1] 10.0 12.5 15.0 17.5 20.0
seq(0,1,length=5)
[1] 0.00 0.25 0.50 0.75 1.00
A função sequence( )
sequence(4:5) # gera a sequência 1 2 3 4 1 2 3 4 5
sequence(1:5) # gera a sequência 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
sequence(5:1) # gera a sequência 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
Repetições: a função rep( )
rep("boi",6)
[1] "boi" "boi" "boi" "boi" "boi" "boi"
rep(2,5)
[1] 2 2 2 2 2
rep(1,10) # retorna o número 1 dez vezes
rep(NA,20) # retorna NA vinte vezes
rep(1:4,4:1) # retorna o número 1 quatro vezes, o 2 três vezes...
rep(1:5,each=2) # retorna duas vezes cada número da sequência de 1 a 5
rep(1:5,2) # repete a sequência de 1 a 5