I have a function that works in ESS, but it fails if I include it in an .Rmd file that I tried to knit using Rstudio. I found advice at: https://www.rstudio.com/products/rstudio/release-notes/debugging-with-rstudio/ It seems to be not referring to markdown files. Somewhere else suggested calling render() in the console pane. I tried that. The browser() function interrupts correctly, but I can't find out what the object zzz in the code below looks like. Nothing prints the way it would in a "normal" R buffer. code outline: making zzz out of two dataframes xx and yy ## zzz <- NULL for(i in xx$Sample){ raw.i <- <stuff> etc. etc. zzz <- rbind(zzz, wide.i) } browser() names(zzz) <- c("Cultivar", "Test", "Change") That line fails, with a complaint about zzz being NULL. It appears as though the rbind doesn't do anything, but I can't see what wide.i looks like to get an idea what could be the cause. Ideas what I should try are welcome. I have no idea why the code works in an R environment but not an Rmd one. R-3.5.2, platform x86_64-pc-linux-gnu arch x86_64 os linux-gnu system x86_64, linux-gnu Rstudio Version 1.1.383 -- ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. ___ Patrick Connolly {~._.~} Great minds discuss ideas _( Y )_ Average minds discuss events (:_~*~_:) Small minds discuss people (_)-(_) ..... Eleanor Roosevelt ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.
Dear Patrick, This is not easy to debug without a reprex I would check the content of zzz and wide.i in the loop str(wide.i) zzz <- rbind(zzz, wide.i) str(zzz) Note that the Rmd always runs in a clean environment. This might explain the difference Best regards, ir. Thierry Onkelinx Statisticus / Statistician Vlaamse Overheid / Government of Flanders INSTITUUT VOOR NATUUR- EN BOSONDERZOEK / RESEARCH INSTITUTE FOR NATURE AND FOREST Team Biometrie & Kwaliteitszorg / Team Biometrics & Quality Assurance thierry.onkelinx at inbo.be Havenlaan 88 bus 73, 1000 Brussel www.inbo.be /////////////////////////////////////////////////////////////////////////////////////////// To call in the statistician after the experiment is done may be no more than asking him to perform a post-mortem examination: he may be able to say what the experiment died of. ~ Sir Ronald Aylmer Fisher The plural of anecdote is not data. ~ Roger Brinner The combination of some data and an aching desire for an answer does not ensure that a reasonable answer can be extracted from a given body of data. ~ John Tukey /////////////////////////////////////////////////////////////////////////////////////////// <https://www.inbo.be> Op do 18 apr. 2019 om 11:53 schreef Patrick Connolly < p_connolly at slingshot.co.nz>:> I have a function that works in ESS, but it fails if I include it in > an .Rmd file that I tried to knit using Rstudio. I found advice at: > > https://www.rstudio.com/products/rstudio/release-notes/debugging-with-rstudio/ > > It seems to be not referring to markdown files. Somewhere else > suggested calling render() in the console pane. I tried that. The > browser() function interrupts correctly, but I can't find out what the > object zzz in the code below looks like. Nothing prints the way it > would in a "normal" R buffer. > > code outline: making zzz out of two dataframes xx and yy > > ## > zzz <- NULL > for(i in xx$Sample){ > raw.i <- <stuff> > > etc. etc. > > zzz <- rbind(zzz, wide.i) > } > browser() > > names(zzz) <- c("Cultivar", "Test", "Change") > That line fails, with a complaint about zzz being NULL. > > It appears as though the rbind doesn't do anything, but I can't see > what wide.i looks like to get an idea what could be the cause. > > Ideas what I should try are welcome. I have no idea why the code > works in an R environment but not an Rmd one. > > > R-3.5.2, > platform x86_64-pc-linux-gnu > arch x86_64 > os linux-gnu > system x86_64, linux-gnu > > Rstudio Version 1.1.383 > > > > -- > ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. > ___ Patrick Connolly > {~._.~} Great minds discuss ideas > _( Y )_ Average minds discuss events > (:_~*~_:) Small minds discuss people > (_)-(_) ..... Eleanor Roosevelt > > ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. > > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >[[alternative HTML version deleted]]
On 19/04/19 12:13 AM, Thierry Onkelinx wrote:> Dear Patrick, > > This is not easy to debug without a reprex > > I would check the content of zzz and wide.i in the loop > > str(wide.i) > ?zzz <- rbind(zzz, wide.i) > str(zzz) >That's just what I'm trying to achieve but the debugging doesn't work how it does with regular R code.> Note that the Rmd always runs in a clean environment. This might > explain the difference >The data frames xx and yy are defined in earlier code chunks. Maybe I need to define them again. I'll look closer at it after Easter. Thanks for the suggestion.> Best regards, > > ir. Thierry Onkelinx > Statisticus / Statistician > > Vlaamse Overheid / Government of Flanders > INSTITUUT VOOR NATUUR- EN BOSONDERZOEK / RESEARCH INSTITUTE FOR NATURE > AND FOREST > Team Biometrie & Kwaliteitszorg / Team Biometrics & Quality Assurance > thierry.onkelinx at inbo.be <mailto:thierry.onkelinx at inbo.be> > Havenlaan 88 bus 73, 1000 Brussel > www.inbo.be <http://www.inbo.be> > > /////////////////////////////////////////////////////////////////////////////////////////// > To call in the statistician after the experiment is done may be no > more than asking him to perform a post-mortem examination: he may be > able to say what the experiment died of. ~ Sir Ronald Aylmer Fisher > The plural of anecdote is not data. ~ Roger Brinner > The combination of some data and an aching desire for an answer does > not ensure that a reasonable answer can be extracted from a given body > of data. ~ John Tukey > /////////////////////////////////////////////////////////////////////////////////////////// > > <https://www.inbo.be> > > > Op do 18 apr. 2019 om 11:53 schreef Patrick Connolly > <p_connolly at slingshot.co.nz <mailto:p_connolly at slingshot.co.nz>>: > > I have a function that works in ESS, but it fails if I include it in > an .Rmd file that I tried to knit using Rstudio.? I found advice at: > https://www.rstudio.com/products/rstudio/release-notes/debugging-with-rstudio/ > > It seems to be not referring to markdown files.? Somewhere else > suggested calling render() in the console pane.? I tried that.? The > browser() function interrupts correctly, but I can't find out what the > object zzz in the code below looks like.? Nothing prints the way it > would in a "normal" R buffer. > > code outline:? making zzz out of two dataframes xx and yy > > ## > ? ? zzz <- NULL > ? ? for(i in xx$Sample){ > ? ? ? ? raw.i <- <stuff> > > ? ? ? ? etc. etc. > > ? ? ? ? zzz <- rbind(zzz, wide.i) > } > ? ?browser() > > ? ? names(zzz) <- c("Cultivar", "Test", "Change") > That line fails, with a complaint about zzz being NULL. > > It appears as though the rbind doesn't do anything, but I can't see > what wide.i looks like to get an idea what could be the cause. > > Ideas what I should try are welcome.? I have no idea why the code > works in an R environment but not an Rmd one. > > > R-3.5.2, > platform? ? ? ?x86_64-pc-linux-gnu > arch? ? ? ? ? ?x86_64 > os? ? ? ? ? ? ?linux-gnu > system? ? ? ? ?x86_64, linux-gnu > > Rstudio Version 1.1.383 > > > > -- > ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. > > ? ?___? ? Patrick Connolly > ?{~._.~}? ? ? ? ? ? ? ? ? ?Great minds discuss ideas > ?_( Y )_? ? ? ? ? ? ? ? ?Average minds discuss events > (:_~*~_:)? ? ? ? ? ? ? ? ? Small minds discuss people > ?(_)-(_)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ..... Eleanor Roosevelt > > ~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~. > > ______________________________________________ > R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- > To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >[[alternative HTML version deleted]]