2014-02-19 10 views
3

默認情況下,knit/Sweave命令將生成一個與.Rnw文件同名的tex文件。我想給它和後續的PDF文件一個不同的名字是可能的?如何編織/ Sweave到不同的文件名?

+10

你在'knit'或'knit2pdf'中有'output'參數。 – Victorp

+0

廢話!我不知道我是如何錯過的。有沒有辦法將編織文件中的變量名(在R代碼塊中)追加到文件名中?我問,因爲我已經在生成一個ID,我不想爲文件名生成另一個隨機數。 – Avinash

+0

答案是肯定的,但取決於你如何在.Rnw中生成id。如果您展示樣品,您將得到答案。 – kohske

回答

2

.Rmd文件的標題,你可以指定一個文件名:

--- 
title: "My title" 
output: 
    pdf_document: 
    pandoc_args: [ 
     "--output=Custom_name.pdf" 
    ] 
--- 

.Rnw文件,您可以直接調用該函數knitr::knit2pdf

knit2pdf(input.Rnw, output="Custom_name.pdf") 
+1

+1 pandoc_args',但這隻對RMD文件有效。由於這個問題是關於RNW的,所以您可能需要將註釋中的建議('knit2pdf',參數'output')添加到您的答案中。 –

+0

@CL好主意,完成。 – mrub

0

@mrub,

knit2pdf(input.Rnw, output="Custom_name.pdf") 

這是否適合你?? 因爲如果我只是用

knit2pdf("222.Rnw") 

,它會帶給我一個名爲「222.pdf」美麗的pdf文件,但如果我用

knit2pdf("222.Rnw",output="lalala.pdf") 

它會給出一個名爲PDF文件「lalala.pdf 「,沒有錯誤,但內容不過是一團糟。

你知道爲什麼會發生這種情況?

相關問題