Hello,
Thank you for the questions as well as remaining me of the default
parameters in the yaml session.
Indeed this seems to be the solution.
But how would I assign package data as a default parameter?
So originally I thought to render the markdown with :
<code>
data(sample_analysis)
data(skylineconfig)
x <- rmarkdown::render("report.Rmd", output_format =
"html_document",
params = list(data = sample_analysis,
configuration skylineconfig),envir =
new.env())
<code>
I do not think I can write:
params:
configuration: !r data(sample_analysis)
data: !r data(skylineconfig)
since data does not return the package just puts them in the env as a
side effect. Is there a different base function to achieve it.
Thank you
Witek
On 2 July 2018 at 16:56, Duncan Murdoch <murdoch.duncan at gmail.com>
wrote:> On 02/07/2018 10:30 AM, Witold E Wolski wrote:
>>
>> Hello,
>>
>> I have a package which includes some parameterized r-markdown report
>> which I would also like to build as package vignettes.
>>
>> Is there a way to run the parameterized vignette creation with the
>> package build or package check?
>
>
>
> Doesn't the usual method work? You can specify defaults for parameters
in
> the YAML header; I'd expect those to be the parameter values that get
used.
>
> You can give instructions to your users on how to rebuild the reports with
> different parameters.
>
> Duncan Murdoch
>
>>
>> Thank you
>>
>
--
Witold Eryk Wolski
On 02/07/2018 11:22 AM, Witold E Wolski wrote:> Hello, > > Thank you for the questions as well as remaining me of the default > parameters in the yaml session. > Indeed this seems to be the solution. > > > But how would I assign package data as a default parameter? > So originally I thought to render the markdown with : > > <code> > data(sample_analysis) > data(skylineconfig) > x <- rmarkdown::render("report.Rmd", output_format = "html_document", > params = list(data = sample_analysis, > configuration > skylineconfig),envir = new.env()) > <code> > > I do not think I can write: > > params: > configuration: !r data(sample_analysis) > data: !r data(skylineconfig) > > since data does not return the package just puts them in the env as a > side effect. Is there a different base function to achieve it.I think you could use params: configuration: !r get(data(sample_analysis)) data: !r get(data(skylineconfig)) but if that doesn't work, a longer version is params: configuration: !r {data(sample_analysis); sample_analysis} data: !r {data(skylineconfig); skylineconfig} Duncan Murdoch> > > Thank you > Witek > > > > > On 2 July 2018 at 16:56, Duncan Murdoch <murdoch.duncan at gmail.com> wrote: >> On 02/07/2018 10:30 AM, Witold E Wolski wrote: >>> >>> Hello, >>> >>> I have a package which includes some parameterized r-markdown report >>> which I would also like to build as package vignettes. >>> >>> Is there a way to run the parameterized vignette creation with the >>> package build or package check? >> >> >> >> Doesn't the usual method work? You can specify defaults for parameters in >> the YAML header; I'd expect those to be the parameter values that get used. >> >> You can give instructions to your users on how to rebuild the reports with >> different parameters. >> >> Duncan Murdoch >> >>> >>> Thank you >>> >> > > >
Dear Duncan,
Following your advice (Thank you for it) I did include into the vignettes
params:
configuration: !r get(data(sample_analysis))
data: !r get(data(skylineconfig))
And everything seemed (see below) to work fine.
devtools::build_vignettes() builds the vignettes.
Runs with NO error. By this the .Rmd file, html file and corresponding
.R files is being placed into the inst/doc directory.
However, when I did want to check the package by running
devtools::check(build_args="--no-build-vignettes")
The following warning is shown:
Warning: parse error in file
'C:/Users/wolski/AppData/Local/Temp/Rtmp4QanHv/SRMService.Rcheck/SRMService/doc/tr_srm_summary.R':
/Users/wolski/AppData/Local/Temp/Rtmp4QanHv/SRMService.Rcheck/SRMService/doc/tr_srm_summary.R:2:22:
unexpected '<'
1: params <-
2: list(configuration = <
This is how the start of the .R file produced from the vignette looks like.
params <-
list(configuration = <environment>, data = structure(list(protein_Id
c("CiRT standards",
I am worried that this is the end of this road with parameterized
vignettes then? What do you think?
regards
Witek
On 2 July 2018 at 18:21, Duncan Murdoch <murdoch.duncan at gmail.com>
wrote:> On 02/07/2018 11:22 AM, Witold E Wolski wrote:
>>
>> Hello,
>>
>> Thank you for the questions as well as remaining me of the default
>> parameters in the yaml session.
>> Indeed this seems to be the solution.
>>
>>
>> But how would I assign package data as a default parameter?
>> So originally I thought to render the markdown with :
>>
>> <code>
>> data(sample_analysis)
>> data(skylineconfig)
>> x <- rmarkdown::render("report.Rmd", output_format =
"html_document",
>> params = list(data = sample_analysis,
>> configuration >>
skylineconfig),envir = new.env())
>> <code>
>>
>> I do not think I can write:
>>
>> params:
>> configuration: !r data(sample_analysis)
>> data: !r data(skylineconfig)
>>
>> since data does not return the package just puts them in the env as a
>> side effect. Is there a different base function to achieve it.
>
>
> I think you could use
>
> params:
> configuration: !r get(data(sample_analysis))
> data: !r get(data(skylineconfig))
>
> but if that doesn't work, a longer version is
>
> params:
> configuration: !r {data(sample_analysis); sample_analysis}
> data: !r {data(skylineconfig); skylineconfig}
>
> Duncan Murdoch
>
>
>>
>>
>> Thank you
>> Witek
>>
>>
>>
>>
>> On 2 July 2018 at 16:56, Duncan Murdoch <murdoch.duncan at
gmail.com> wrote:
>>>
>>> On 02/07/2018 10:30 AM, Witold E Wolski wrote:
>>>>
>>>>
>>>> Hello,
>>>>
>>>> I have a package which includes some parameterized r-markdown
report
>>>> which I would also like to build as package vignettes.
>>>>
>>>> Is there a way to run the parameterized vignette creation with
the
>>>> package build or package check?
>>>
>>>
>>>
>>>
>>> Doesn't the usual method work? You can specify defaults for
parameters
>>> in
>>> the YAML header; I'd expect those to be the parameter values
that get
>>> used.
>>>
>>> You can give instructions to your users on how to rebuild the
reports
>>> with
>>> different parameters.
>>>
>>> Duncan Murdoch
>>>
>>>>
>>>> Thank you
>>>>
>>>
>>
>>
>>
>
--
Witold Eryk Wolski