.Rmd dosyasından oluşturulan PDF raporlarını otomatik olarak kaydetmeme izin veren bir döngü oluşturmak istiyorum. Örneğin, bir "ID" değişkeninin 10 satırı varsa, R'nin otomatik olarak 10 raporu otomatik olarak belirli bir dizine kaydetmesini isterim. Bu raporlar seçilen ID'ye göre değişecektir.R Knitr PDF: PDF raporlarını (.Rmd'den oluşturulan) otomatik olarak bir döngüde kaydetmek için bir olasılık var mı?
Önceki bir yazı (Using loops with knitr to produce multiple pdf reports... need a little help to get me over the hump), .Rnw dosyalarından oluşturulan çoklu pdf raporlarının oluşturulmasını ele almıştır.
#Data
```{r, include=FALSE}
set.seed(500)
Score <- rnorm(40, 100, 15)
Criteria1<-rnorm(40, 10, 5)
Criteria2<-rnorm(40, 20, 5)
ID <- sample(1:1000,8,replace=T)
df <- data.frame(ID,Score,Criteria1,Criteria2)
#instead of manually choosing the ID:
subgroup<- subset(df, ID==1)
# I would like to subset the Data through a loop. My approach was like like this:
for (id in unique(df$ID)){
subgroup<- df[df$ID == id,]}
```
```{r, echo=FALSE}
#Report Analysis
summary(subgroup)
```
#Here will be some text about the summary.
# At the end the goal is to produce automatic pdf reports with the ID name as a filename:
library("rmarkdown")
render("Automated_Report.rmd",output_file = paste('report.', id, '.pdf', sep=''))
Bir döngüye ihtiyacınız var, iki değil. Kodunuzun ayarlandığı şekilde, tüm alt gruplarınız arasında geçiş yaparsınız ve ardından işiniz bittiğinde bir grup PDF oluşturursunuz. Bunları birleştirmeniz gerekir: bir alt grup seçin ve aynı döngüye göre ona dayalı bir rapor oluşturun. Daha fazla yardıma ihtiyacınız varsa, "çalışmıyor gibi görünüyor" dan çok daha spesifik olmanız ve muhtemelen tekrarlanabilir bir örnek oluşturmanız gerekir. – Gregor
Ayrıca 'knit_expand' veya' brew' paketine de bakabilirsiniz. – Gregor
Ayrıca, altlık için yalnızca bir döngü ile denedim. Ama bu da işe yaramadı. Ben sadece bir raporda her ID için özeti yapıştırır ve ayrıca rittdown paketinden render() işlevi ile knit2pdf() işlevini değiştirdi basit bir çoğaltılabilir bir örnek sağladım. @ Gregor – user3491036