x <- 0:10 fx <- dbinom(x, 10, 0.35) plot(x, fx, type='h') title("Função de Probabilidade da Binomial")
curve(dnorm(x, mean=70, sd=10), xlim=c(-3,3))
seq(10, 200, by=10)
a1
com os elementos (23, 45, 21, 29, 40, 22, 29, 37, 44, 37, 31, 33, 36)
a1 <- c(23, 45, 21, 29, 40, 22, 29, 37, 44, 37, 31, 33, 36)
a1
que sejam maiores que 30. a1[a1 > 30]
a1
que sejam menores que 25 ou maiores que 40. Guardar estes valores em um vetor a2
a2 <- a1[a1 < 25 | a1 > 40]
a1
que sejam maiores que 30 e menores que 40. a1[a1 > 30 & a1 < 40]
a1
que sejam menores que 30which(a1[a1 < 30])
a1
wihch.max(a1)
a1
which.min(a1)
a3
com os elementos de a1
para os quais o resto da divisão por 3 seja igual a 2.a3 <- a1[a1 %% 3 == 2]
a1
que sejam múltiplos de 4a1[a1 %% 4 == 0]
a1
os elementos iguais a 37 pelo valor 36a1[a1 == 37] <- 36
a1
os elementos maiores que 40 pelo código de valor perdido NA
a1[a1 > 40] <- NA
a1
onde estão os valores perdidoswhich(is.na(a1))
sexo
com os comandos a seguir: sexo <- c(1, 2, 2, 2, 1, 2, 1, 1, 1, 2, 2, 1, 2) sexo <- factor(sexo, lev=1:2, lab=c("M","F"))
sexo
que possuem o valor “M“
which(sexo == "M")
a1
para os quais o valor correspondente em sexo
é “M“
a1[which(sexo == "M")]
a1
para os quais o valor correspondente em sexo
é “F“
a1[which(sexo == "F")]
sort(a1) # Ordena o vetor a1 em ordem crescente order(a1) # Retorna a ordem de cada elemento no vetor a1 a1[order(a1)] # Ordena o vetor a1 em ordem crescente sort(a1, dec = TRUE) # Ordena o vetor a1 em ordem decrescente
a1.ord
com os elementos de a1
em ordem crescentea1.ord <- sort(a1)
a1
de forma a exibir primeiro todos os elementos correpondentes a “M“
e depois os correspondentes a “F“
a1[order(sexo)]
notas
que possua os elementos de a1
com valores correspondentes de sexo
sendo “M“
ordenados de forma crescente, seguidos pelos correspondentes a “F“
também ordenados de forma crescente. Em outras palavras, o objeto notas deverá ter as notas dos homes ordenadas seguidas pelas das mulheres também ordenadas.notas <- a1[order(sexo, a1)]
(1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 60, 70, 80, 90, 100, 200, 300, 400, 500)
c(1:5, seq(10,50, by=5), seq(60,100, by=10), seq(200, 500, by=100))
Arquivo .R uma segunda versão da resolução da lista. Versão 2 lista 1 por Wagner 29/02/2008
choose()
factorial()
gamma()
choose(10, 4) factorial(10)/(factorial(10-4) * factorial(4)) gamma(10 + 1)/(gamma((10 - 4) + 1) * gamma(4 + 1))
dchisq()
fChisq <- function(x, k=3) 1/(gamma(k/2)) * ((1/2) ^ (k/2)) * x^((k/2) - 1) * exp(-(1/2) * x) plot(fChisq, 0:10, xlim=c(0,10)) curve(dchisq(x, 3), xlim=c(0, 10)
t
com 9 graus de liberdade. ft <- function(x, k = 9) (gamma((k + 1) / 2)/gamma(k / 2)) * (1 / sqrt(k * pi)) * (1/(1 + ((x^2) / k))^((k + 1)/2)) plot(ft, 0:10) curve(dt(x, 9), 0:10)
plot()
com o uso do argumento type
com cada uma das opções: type = “p“
, type = “l“
, type = “b“
, type = “c“
, type = “o“
, type = “h“
, type = “s“
, type = “S“
, type = “n“
. Verifique os resultados produzidos e:fBin <- function(x, n, p) choose(n, x) * (p^x) * (1 - p)^(n - x) x <- 0:10 fx <- fBin(x, 10, 0.03) plot(x, fx, type='p') plot(x, fx, type='l') plot(x, fx, type='b') #Versão alternativa par(mfrow=c(3,3)) #Dividir a tela Gráfica sapply(c("p", "l", "b", "c", "o", "h", "s", "S", "n"), function(.x)plot(x, fx, type=.x, main=sprintf("Tipo: %s", .x)))
Tipo | Forma | Exemplo |
---|---|---|
p | Pontos | Verificar Distribuição dos Pontos |
l | linhas | Verificar Tendencia da Série |
b | Ambos, linhas e pontos | Verificar a Tendencia e localizar as observações |
c | Como o Tipo b, mas apenas com as linhas | |
o | Como o tipo b, mas com as linhas sobre os pontos | |
h | Com linhas verticais, similares à um histograma | Verificar a Frequencia |
s | Por etapas, similares a uma escada, começando a etapa horizontalmente | |
S | como o anterior, mas começando verticalmente | |
n | Não plota o gráfico | Útil para 'pegar' os parametros gráficos e ajustar a janela aos pontos |