Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
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/03/26 23:20] paulojus |
disciplinas:ce223:comandos2008 [2008/04/09 10:22] ehlers |
||
---|---|---|---|
Linha 556: | Linha 556: | ||
</code> | </code> | ||
- | Vamosagora visualizar a distribuição de interesse de diferentes formas: pelo hiostograma das simulações e, | + | Vamos agora visualizar a distribuição de interesse de diferentes formas: pelo histograma das simulações e, |
uma forma alternativa (e mais interessante!!!) utilizando estimação de densidades. | uma forma alternativa (e mais interessante!!!) utilizando estimação de densidades. | ||
<code R> | <code R> | ||
Linha 566: | Linha 566: | ||
</code> | </code> | ||
- | Note que que funçãos podem retornar resultados e/ou gráficos. A função ''hist()'' é um exemplo de função que retorna ambos. | + | Note que funções podem retornar resultados e/ou gráficos. A função ''hist()'' é um exemplo de função que retorna ambos. |
<code R> | <code R> | ||
- | hy<- hist(Y) | + | hy <- hist(Y) |
hy | hy | ||
class(hy) | class(hy) | ||
Linha 575: | Linha 575: | ||
</code> | </code> | ||
- | Criando uma função-- um exemplo. Vamosencapsular todo o procedimento acima em uma função. Isto pode | + | Criando uma função -- um exemplo. Vamos encapsular todo o procedimento acima em uma função. Isto pode |
- | ser útil para tornar a execução mias rápida e eficiente quando o procedimento deve ser repetido várias vezes. | + | ser útil para tornar a execução mais rápida e eficiente quando o procedimento deve ser repetido várias vezes. |
(o equivalente a construir ''macros''). | (o equivalente a construir ''macros''). | ||
<code R> | <code R> | ||
Linha 595: | Linha 595: | ||
</code> | </code> | ||
- | === 24/03/2008 === | + | === 26/03/2008 === |
- | Exercício proposto no material do cursoe extensões discutidas em aula. | + | Exercício proposto no material do curso e extensões discutidas em aula. |
Calculando o valor da expressão | Calculando o valor da expressão | ||
Linha 613: | Linha 613: | ||
</code> | </code> | ||
- | Noque que está éa expressão da log-verossimilhanca para uma a.a. de uma distribuição de Poisson | + | Noque que está é a expressão da log-verossimilhanca para uma a.a. de uma distribuição de Poisson |
<code R> | <code R> | ||
mf(y=x, lam=11) | mf(y=x, lam=11) | ||
Linha 637: | Linha 637: | ||
</code> | </code> | ||
- | A solução também poderia ser obtida por otimização numérica. Isto não é vantajoso para este problema mas pode ser a solução cem casosonde asolução analítica não é disponível. | + | A solução também poderia ser obtida por otimização numérica. Isto não é vantajoso para este problema mas pode ser a solução em casos onde a solução analítica não é disponível. |
<code> | <code> | ||
optimize(mf, c(min(x), max(x)), maximum=T, y=x) | optimize(mf, c(min(x), max(x)), maximum=T, y=x) | ||
+ | </code> | ||
+ | |||
+ | ==== Semana 6 ==== | ||
+ | |||
+ | === 31/03/2008 e 02/04/2008 === | ||
+ | Lendo dados externos no formato data.frame | ||
+ | |||
+ | <code R> | ||
+ | milsa=read.table('milsa.dat',header=T) | ||
+ | </code> | ||
+ | |||
+ | Transformando numericos em fatores | ||
+ | <code R> | ||
+ | milsa$civil=factor(milsa$civil,lev=1:2,lab=c('solteiro','casado')) | ||
+ | milsa$instrucao=factor(milsa$instrucao,lev=1:3,lab=c('1oGrau','2oGrau','superior'),ord=T) | ||
+ | milsa$regiao=factor(milsa$regiao,lev=1:3,lab=c('interior','capital','outro')) | ||
+ | head(milsa) | ||
+ | </code> | ||
+ | Criando nova variavel numerica | ||
+ | <code R> | ||
+ | milsa=transform(milsa,idade=ano+mes/12) | ||
+ | </code> | ||
+ | |||
+ | Tabulacao | ||
+ | <code R> | ||
+ | table(milsa$instrucao) | ||
+ | |||
+ | table(milsa$civil) | ||
+ | |||
+ | table(milsa$regiao) | ||
+ | |||
+ | table(milsa[,c(2,3)]) | ||
+ | |||
+ | table(milsa$civil,milsa$instrucao) | ||
+ | |||
+ | attach(milsa) | ||
+ | |||
+ | table(civil,instrucao) | ||
+ | |||
+ | table(civil,instrucao,regiao) | ||
+ | </code> | ||
+ | |||
+ | Proporcoes | ||
+ | <code R> | ||
+ | tmp=table(civil,regiao) | ||
+ | |||
+ | cbind(tmp, total=rowSums(tmp)) | ||
+ | |||
+ | prop.table(tmp,mar=1)# linhas somam 1 | ||
+ | |||
+ | rbind(tmp, total=colSums(tmp)) | ||
+ | |||
+ | prop.table(tmp,mar=2)# colunas somam 1 | ||
+ | |||
+ | prop.table(tmp)# todos somam 1 | ||
+ | </code> | ||
+ | |||
+ | Resumos | ||
+ | <code R> | ||
+ | summary(milsa[,-1]) | ||
+ | |||
+ | par(mfrow=c(3,2)) | ||
+ | |||
+ | barplot(table(civil)) | ||
+ | barplot(table(instrucao)) | ||
+ | barplot(table(regiao)) | ||
+ | |||
+ | pie(table(civil),main='estado civil') | ||
+ | pie(table(instrucao),main='grau de instrucao') | ||
+ | pie(table(regiao),main='regiao de origem') | ||
+ | </code> | ||
+ | |||
+ | Analise bivariada | ||
+ | <code R> | ||
+ | barplot(table(civil,instrucao)) | ||
+ | barplot(table(regiao,instrucao)) | ||
+ | |||
+ | barplot(table(civil,instrucao),beside=T) | ||
+ | barplot(table(regiao,instrucao),beside=T,legend.text=T) | ||
+ | </code> | ||
+ | |||
+ | Esquema dos 5 numeros | ||
+ | <code R> | ||
+ | fivenum(idade) | ||
+ | |||
+ | [1] 20.83333 30.58333 34.91667 40.54167 48.91667 | ||
+ | |||
+ | quantile(idade,c(0.25,0.75)) | ||
+ | 25% 75% | ||
+ | 30.66667 40.52083 | ||
+ | </code> | ||
+ | |||
+ | Medidas robustas | ||
+ | <code R> | ||
+ | salario1=salario | ||
+ | salario1[36]=93.30 | ||
+ | |||
+ | mean(salario); mean(salario1) | ||
+ | |||
+ | median(salario); median(salario1) | ||
+ | |||
+ | mean(salario,trim=0.1); mean(salario1,trim=0.1) | ||
+ | |||
+ | sd(salario); sd(salario1) | ||
+ | |||
+ | #distancia inter quartis | ||
+ | |||
+ | IQR(salario); IQR(salario1) | ||
+ | |||
+ | ##Desvio absoluto mediano (MAD: median absolute deviation) | ||
+ | ##mediana(|Xi - median(X)| * 1.4826 | ||
+ | ##A constante 1.4826 torna o mad comparavel com o sd de uma normal | ||
+ | |||
+ | mad(salario); mad(salario1) | ||
+ | </code> | ||
+ | |||
+ | Ramo-folhas | ||
+ | <code R> | ||
+ | stem(salario) | ||
+ | |||
+ | The decimal point is at the | | ||
+ | |||
+ | 4 | 0637 | ||
+ | 6 | 379446 | ||
+ | 8 | 15791388 | ||
+ | 10 | 5816 | ||
+ | 12 | 08268 | ||
+ | 14 | 77 | ||
+ | 16 | 0263 | ||
+ | 18 | 84 | ||
+ | 20 | | ||
+ | 22 | 3 | ||
+ | |||
+ | stem(salario,scale=2) | ||
+ | 4 | 06 | ||
+ | 5 | 37 | ||
+ | 6 | 379 | ||
+ | 7 | 446 | ||
+ | 8 | 1579 | ||
+ | 9 | 1388 | ||
+ | 10 | 58 | ||
+ | 11 | 16 | ||
+ | 12 | 08 | ||
+ | 13 | 268 | ||
+ | 14 | 77 | ||
+ | 15 | | ||
+ | 16 | 026 | ||
+ | 17 | 3 | ||
+ | 18 | 8 | ||
+ | 19 | 4 | ||
+ | 20 | | ||
+ | 21 | | ||
+ | 22 | | ||
+ | 23 | 3 | ||
+ | </code> | ||
+ | |||
+ | Histogramas | ||
+ | <code R> | ||
+ | par(mfrow=c(2,2)) | ||
+ | |||
+ | hist(salario,main='salario') | ||
+ | |||
+ | hist(salario,nclass=15,main='salario') | ||
+ | hist(idade,main='idade') | ||
+ | |||
+ | barplot(table(filhos),main='No de filhos') | ||
+ | |||
+ | par(mfrow=c(1,1)) | ||
+ | |||
+ | hist(salario,main='salario') | ||
+ | rug(salario) | ||
+ | </code> | ||
+ | |||
+ | Estimando uma funcao de densidade | ||
+ | <code R> | ||
+ | hist(salario,main='salario',prob=T) | ||
+ | lines(density(salario)) | ||
+ | |||
+ | hist(idade,main='idade',prob=T) | ||
+ | lines(density(idade)) | ||
+ | </code> | ||
+ | |||
+ | Boxplot | ||
+ | <code R> | ||
+ | par(mfrow=c(1,2)) | ||
+ | |||
+ | boxplot(idade,main='idade') | ||
+ | rug(idade,side=2) | ||
+ | |||
+ | boxplot(salario,main='salario') | ||
+ | rug(salario,side=2) | ||
+ | |||
+ | par(mfrow=c(2,1)) | ||
+ | |||
+ | boxplot(idade,horizontal=T,main='idade') | ||
+ | rug(idade,side=1) | ||
+ | |||
+ | boxplot(salario, horizontal=T,main='salario') | ||
+ | rug(salario,side=1) | ||
+ | </code> | ||
+ | |||
+ | Variaveis categoricas e numericas | ||
+ | <code R> | ||
+ | boxplot(salario~regiao) | ||
+ | boxplot(idade~civil) | ||
+ | |||
+ | boxplot(scale(salario),scale(idade)) #variaveis na mesma escala | ||
+ | </code> | ||
+ | |||
+ | Ambas variaveis numericas | ||
+ | <code R> | ||
+ | plot(salario,idade) #variaveis na mesma escala | ||
+ | |||
+ | corr=round(cor(salario,idade),2) | ||
+ | |||
+ | text(20,25,paste('rho=',corr)) | ||
+ | |||
</code> | </code> | ||