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
ridiculas [2011/06/01 14:07]
walmes
ridiculas [2011/07/05 14:18]
walmes [Como fazer a justaposição de vários data.frames]
Linha 5: Linha 5:
  
 **//​Ridículas//​** é a página do LEG dedicada à fornecer //dicas curtas// sobre R, e.g. condução de análises, operação com dados e confecção de gráficos. As dicas estão organizadas pelo título, seguido de descrição,​ palavras-chave e CMR (código mínimo reproduzível). Se você deseja contribuir com a nossa página de Ridículas, envie e-mail para ''​walmes@ufpr.br''​. **//​Ridículas//​** é a página do LEG dedicada à fornecer //dicas curtas// sobre R, e.g. condução de análises, operação com dados e confecção de gráficos. As dicas estão organizadas pelo título, seguido de descrição,​ palavras-chave e CMR (código mínimo reproduzível). Se você deseja contribuir com a nossa página de Ridículas, envie e-mail para ''​walmes@ufpr.br''​.
 +
 +----
 +
 +==== Como fazer a justaposição de vários data.frames ====
 +
 +Temporariamente sem descrição.\\
 +palavras-chave:​ #merge, #Reduce.
 +
 +<code R>
 +#​------------------------------------------------------------------------------------------
 +#                                                                                por Walmes
 +#​------------------------------------------------------------------------------------------
 +
 +id <- 1:30  # número único que identifica os registros
 +n <- 20     # número de registros por data.frame
 +
 +a1 <- data.frame(id=sample(id,​ n), v1=rnorm(n)) ​    # resposta 1
 +a2 <- data.frame(id=sample(id,​ n), v2=rpois(n,​10)) ​ # resposta 2
 +a3 <- data.frame(id=sample(id,​ n), v3=runif(n)) ​    # resposta 3
 +
 +merge(a1, a2, by="​id"​) # justapõe 2 data.frames de cada vez
 +
 +a0 <- list(a1, a2, a3) # cria uma lista com todos os data.frames
 +
 +
 +Reduce(function(x,​ y) merge(x, y, by="​id"​),​ a0, accumulate=FALSE) # justapõe todos
 +
 +#​------------------------------------------------------------------------------------------
 +# font: http://​rwiki.sciviews.org/​doku.php?​id=tips:​data-frames:​merge
 +#       ​https://​stat.ethz.ch/​pipermail/​r-help/​2008-April/​160836.html
 +#       ​http://​econometricsense.blogspot.com/​2011/​01/​merging-multiple-data-frames-in-r.html
 +#       ​http://​www.youtube.com/​watch?​v=E4uR5I1uLFM
 +
 +#​------------------------------------------------------------------------------------------
 +</​code>​
 +
 +----
 +
 +
 +==== Gráfico de valores observados e curva de valores preditos para modelo linear generalizado ====
 +
 +Temporariamente sem descrição.\\
 +palavras-chave:​ #glm, #poisson, #predict.
 +
 +<code R>
 +#​------------------------------------------------------------------------------------------
 +#                                                                                por Walmes
 +#​------------------------------------------------------------------------------------------
 +
 +da <- expand.grid(trat=gl(2,​1),​ tempo=1:20)
 +y <- rpois(nrow(da),​ lambda=da$tempo/​5)
 +
 +g0 <- glm(y~trat/​(tempo+I(tempo^2)),​ data=da, family=poisson)
 +
 +new <- expand.grid(trat=gl(2,​1),​ tempo=seq(1,​20,​l=50))
 +new$p0 <- predict(g0, newdata=new,​ type="​response"​)
 +
 +plot(y~tempo,​ da, col=da$trat)
 +with(subset(new,​ trat=="​1"​),​ lines(p0~tempo,​ col=1))
 +with(subset(new,​ trat=="​2"​),​ lines(p0~tempo,​ col=2))
 +
 +#​------------------------------------------------------------------------------------------
 +</​code>​
 +
 +----
 +
 +
 +==== Gráficos de barras com intervalos de confiança para as médias ====
 +
 +Temporariamente sem descrição.\\
 +palavras-chave:​ #intervalo, #​erro_padrão,​ #barras.
 +
 +<code R>
 +#​------------------------------------------------------------------------------------------
 +#                                                                                por Walmes
 +#​------------------------------------------------------------------------------------------
 +# cmr para colocar intervalos de confiança para as medias num gráfico de barras
 +
 +da <- data.frame(trat=gl(5,​8))
 +da$y <- as.numeric(da$trat)+rnorm(nrow(da))
 +
 +m0 <- lm(y~trat, da)
 +
 +new <- data.frame(trat=levels(da$trat))
 +new$pred <- predict(m0, newdata=new,​ interval="​confidence"​)
 +str(new)
 +
 +ylim <- c(0, max(new$pred)*1.05)
 +bp <- barplot(new$pred[,​1],​ ylim=ylim)
 +arrows(bp, new$pred[,​2],​ bp, new$pred[,​3],​ code=3, angle=90)
 +box()
 +
 +#​------------------------------------------------------------------------------------------
 +# outras referências
 +
 +browseURL("​http://​addictedtor.free.fr/​graphiques/​graphcode.php?​graph=54"​)
 +browseURL("​http://​addictedtor.free.fr/​graphiques/​RGraphGallery.php?​graph=72"​)
 +
 +#​------------------------------------------------------------------------------------------
 +</​code>​
 +
 +----
 +
 +==== Gráficos do R exportados pelo dispositivo tikz ====
 +
 +Temporariamente sem descrição.\\
 +palavras-chave:​ #tikz, #sweave, #latex.
 +
 +<​code>​
 +\documentclass{article}
 +
 +\usepackage{Sweave}
 +\usepackage{tikz}
 +
 +\SweaveOpts{keep.source=true}
 +
 +\title{Usando ti\textit{k}z no Sweave}
 +\author{Walmes Zeviani\\ LEG/UFPR}
 +
 +\begin{document}
 +
 +\maketitle
 +
 +C\'​{o}digo m\'​{i}nimo reproduz\'​{i}vel usando \texttt{tikzDevice} para exportar gr\'​{a}ficos feitos no R
 +para codifica\c{c}\~{a}o ti\textit{k}z.
 +
 +{\footnotesize
 +<<​results=hide>>​=
 +#​------------------------------------------------------------------------------------------
 +require(tikzDevice)
 +set.seed(2011);​ x <- rnorm(200)
 +tikz("​plot.tex",​ w=5, h=3)
 +hist(x, freq=FALSE, ylab="​Densidade",​
 +     ​main="​Histograma de uma amostra de $X \\sim N(\\mu=0, \\sigma^2=1)$"​)
 +curve(dnorm(x),​ col=2, add=TRUE, lwd=2); rug(x)
 +legend("​topleft",​ col=2, lty=1, lwd=2, bty="​n",​
 +       ​legend="​$\\displaystyle \\frac{1}{\\sqrt{2\\pi\\sigma^2}}\\cdot e^{-\\frac{(x-\\mu)^2}{2\\sigma^2}}$"​)
 +box(); dev.off()
 +#​------------------------------------------------------------------------------------------
 +@
 +}
 +
 +\input{plot.tex}
 +
 +\end{document}
 +</​code>​
  
 ---- ----
Linha 16: Linha 162:
 <code R> <code R>
 #​------------------------------------------------------------------------------------------ #​------------------------------------------------------------------------------------------
-                                                                       por Ivan e Walmes+                                                              ​por Ivan, Benilton ​e Walmes
 #​------------------------------------------------------------------------------------------ #​------------------------------------------------------------------------------------------
 # dados de séries de dados indexadas no tempo (meses) # dados de séries de dados indexadas no tempo (meses)

QR Code
QR Code ridiculas (generated for current page)