[R] Sweave, mle and curve
    Friedrich.Leisch@tuwien.ac.at 
    Friedrich.Leisch at tuwien.ac.at
       
    Mon Feb 13 12:43:07 CET 2006
    
    
  
>>>>> On Mon, 13 Feb 2006 11:16:14 +0100,
>>>>> Göran Broström (GB) wrote:
  > I am trying to write a lesson on maximum likelihood with Sweave. I get
  > a surprising result with the following code, lec4.Snw:
  > \documentclass[a4paper,12pt]{article}
  > \usepackage[latin1]{inputenc}
  > \title{Maximum likelihood}
  > \author{Göran Broström}
  > \begin{document}
  > \maketitle
  > <<fig=TRUE>>=
  > ## Simulate Y:
  > n <- 25
  > Y <- sum(rpois(n, lambda = 1))
  > Y
  >  ## Define minusloglik:
  > minusloglik <- function(theta) n * theta - Y  * log(theta)
  > curve(minusloglik, 0.2, 2, xlab = "theta")
  > library(stats4)
  > cat("Y is now ", Y, "\n")
  > fit <- mle(minusloglik, start = list(theta = Y/n))
  > summary(fit)
  > @
  > \end{document}
  > In R, I get:
  >> Sweave("lec4.Snw")
  > Writing to file lec4.tex
  > Processing code chunks ...
  >  1 : echo term verbatim eps pdf
  > Y is now  27
  > Y is now  24
  > You can now run LaTeX on 'lec4.tex'
  >> 
  > and the latex document will have two different mle's,  one in the
  > figure, and another one from 'mle'.  One uses Y = 27 and the other Y =
  > 24!
  > I can save the situation by moving "Y <- ..." to a separaye "code chunk".
  > Does 'fig=TRUE' imply that the code chunk is run twice?
Yes, once to get all textual output, and then once for each graphics
format requested.
Best,
-- 
-------------------------------------------------------------------
                        Friedrich Leisch 
Institut für Statistik                     Tel: (+43 1) 58801 10715
Technische Universität Wien                Fax: (+43 1) 58801 10798
Wiedner Hauptstraße 8-10/1071
A-1040 Wien, Austria             http://www.ci.tuwien.ac.at/~leisch
    
    
More information about the R-help
mailing list