Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
Próxima revisão Ambos lados da revisão seguinte
disciplinas:ce223:comandos2008 [2008/04/09 10:22]
ehlers
disciplinas:ce223:comandos2008 [2008/05/05 16:08]
paulojus
Linha 306: Linha 306:
 <code R> <code R>
 freqs = scan(file='​http://​leg.ufpr.br/​~ehlers/​CE223/​fumo.dat'​) freqs = scan(file='​http://​leg.ufpr.br/​~ehlers/​CE223/​fumo.dat'​)
 +freqs
 + [1] 45 16 21 33 40 45 28 22 34 21 50 37 37 15 56 30 85 29
  
-array(freqs,​ dim=c(3,2,3))+array(freqs,​ dim=c(2,3,3)) 
 +, , 1
  
-nomes = list(c('​PR'​,'​SC'​,'​RS'​)c('​M'​,'​F'​)c('nao fuma','​fuma pouco','​fuma muito'​))+     [,1] [,2] [,3] 
 +[1,]   ​45 ​  ​21 ​  40 
 +[2,]   ​16 ​  ​33 ​  45
  
-hf = array(freqs,​ dim=c(3,2,3), dimnames=nomes)+, , 2 
 + 
 +     [,1] [,2] [,3] 
 +[1,]   ​28 ​  ​34 ​  50 
 +[2,]   ​22 ​  ​21 ​  37 
 + 
 +, , 3 
 + 
 +     [,1] [,2] [,3] 
 +[1,]   ​37 ​  ​56 ​  85 
 +[2,]   ​15 ​  ​30 ​  29 
 + 
 +# Cada matrix 2x3 contem as contagens por sexo (linhas) e estado (colunas).  
 +# A ultima dimensao refere-se ao habito de fumar. 
 + 
 +nomes = list(c('​M','​F'​),​c('​PR','​SC','​RS'​),​c('​nao fuma','​fuma pouco','​fuma muito'​)) 
 + 
 +hf = array(freqs,​ dim=c(2,3,3), dimnames=nomes)
  
 hf hf
 +, , nao fuma
 +
 +  PR SC RS
 +M 45 21 40
 +F 16 33 45
 +
 +, , fuma pouco
 +
 +  PR SC RS
 +M 28 34 50
 +F 22 21 37
 +
 +, , fuma muito
 +
 +  PR SC RS
 +M 37 56 85
 +F 15 30 29
  
 m1 <- matrix(1:​12,​ ncol = 3) m1 <- matrix(1:​12,​ ncol = 3)
Linha 480: Linha 519:
 by(d4[,​4],​d4$sexo,​function(x)as.character(x)) by(d4[,​4],​d4$sexo,​function(x)as.character(x))
 </​code>​ </​code>​
 +
 +
  
 Listas Listas
Linha 857: Linha 898:
 text(20,​25,​paste('​rho=',​corr)) text(20,​25,​paste('​rho=',​corr))
  
 +</​code>​
 +
 +
 +==== Semana 7 ====
 +
 +=== 07/04/2008 e 09/04/2008 ===
 +
 +Analisar os dados do Exercicio 26, Capitulo 1 do livro NOÇÕES DE PROBABILIDADE E ESTATÍSTICA disponiveis em http://​www.ime.usp.br/​~noproest
 +
 +Note que ha brancos no arquivo de dados (dados omissos). Uma forma de tratar este problema é abrir o arquivo Excel e salvar como um arquivo texto do tipo CSV (comma separated values). Posteriormente este arquivo pode ser lido como
 +<code R>
 +
 +read.table('​nome do arquivo',​ header=T, sep=','​)
 +
 +# ou
 +
 +read.csv('​nome do arquivo',​ header=T)
 +</​code>​
 +
 +Uma alternativa melhor é utilizar a função read.xls do pacote gdata pois assim não precisamos abrir o arquivo Excel. Após salvar o arquivo aeusp.xls na sua area de trabalho execute
 +<code R>
 +library(gdata) ou require(gdata)
 +
 +x = read.xls ('​aeusp.xls'​)
 +
 +head(x)
 +
 +  Num    Comun Sexo Idade Ecivil X.Reproce X.Temposp X.Resid Trab Ttrab X.Itrab
 +1   1 JdRaposo ​   2     ​4 ​     4  Nordeste ​       21       ​9 ​   3    NA      20
 +2   2 JdRaposo ​   2     ​1 ​     1   ​Sudeste ​       24       ​9 ​   1     ​1 ​     14
 +3   3 JdRaposo ​   2     ​2 ​     1  Nordeste ​       31       ​3 ​   1     ​1 ​     14
 +4   4 JdRaposo ​   1     ​2 ​     2  Nordeste ​       10       ​3 ​   1     ​4 ​     10
 +5   5 JdRaposo ​   2     ​4 ​     2  Nordeste ​       31       ​6 ​   1     ​1 ​     11
 +6   6 JdRaposo ​   2     ​4 ​     2   ​Sudeste ​       24       ​4 ​   2    NA      15
 +  X.Renda X.Acompu X.Serief
 +1       ​1 ​       2        1
 +2       ​2 ​       2        7
 +3       ​5 ​       2        7
 +4       ​5 ​       2       11
 +5       ​6 ​       1        4
 +6       ​4 ​       2        4
 +</​code>​
 +
 +==== Semana 1 ====
 +=== 30/04/2008 ===
 +
 +Gerando 1000 amostras de tamanho n=20 de uma ormal padrão ​
 +<code R>
 +rnorm(20, m=70, sd=10)
 +ams <- matrix(rnorm(20*1000,​ m=70, sd=10), ncol=20)
 +dim(ams)
 +ams[1,]
 +ams[2,]
 +</​code>​
 +
 +Calculando o valor da estatística de interesse para a primeira e segunda amostra
 +<code R>
 +max(ams[1,​])/​quantile(ams[1,​],​ prob=0.75)
 +unname(max(ams[1,​])/​quantile(ams[1,​],​ prob=0.75))
 +unname(max(ams[2,​])/​quantile(ams[2,​],​ prob=0.75))
 +</​code>​
 +
 +Escrevendo uma função que calcula o valor da estatística de interesse e calculando ovamente o valor para a primeira e segunda amostras.
 +</code R>
 +T.est <- function(x) unname(max(x)/​quantile(x,​ prob=0.75))
 +T.est(ams[1,​])
 +T.est(ams[2,​])
 +</​code>​
 +
 +Calculando valor da estatística de interesse agora para todas as amostras de uma só vez
 +<code R>
 +ts <- apply(ams, 1, T.est)
 +length(ts)
 +ts
 +</​code> ​
 +
 +Explorando os resultados: medidas resumo, grafico de densidade estimada e IC (95%)
 +<code R>
 +summary(ts)
 +plot(density(ts))
 +quantile(ts,​ prob=c(0.025,​ 0.975))
 +</​code> ​
 +
 +Aumentando o número de amostras para 5000.
 +<code R>
 +ams <- matrix(rnorm(20*5000,​ m=70, sd=10), ncol=20)
 +ts <- apply(ams, 1, T.est)
 +plot(density(ts))
 +</​code>​
 +
 +Distribuição amostral da média: empírica (por simulação) //versus// teórica
 +<code R>
 +medias <- apply(ams, 1, mean)
 +plot(density(medias))
 +curve(dnorm(x,​mean=70,​ sd=10/​sqrt(20)),​ 60, 80, add=TRUE, col=2)
 </​code>​ </​code>​
  

QR Code
QR Code disciplinas:ce223:comandos2008 (generated for current page)