파라미터

개요

document의 서로 다른 변형을 만들기 위해 사용할 파라미터 집합이 있을 수 있습니다. 예:

  • 특정 지역의 결과만 보여주기
  • 특정 기간을 다루는 보고서 실행
  • 다른 가정을 두고 동일한 분석을 여러 번 실행

이 문서는 Quarto에서 계산 파라미터를 정의하고 사용하는 방법을 설명합니다.

정의

document에 파라미터 정의를 추가하는 방법은 Jupyter, Knitr, Julia 엔진 중 무엇을 사용하는지에 따라 다릅니다.

Jupyter

Jupyter에서는 Papermill과 동일한 문법으로 파라미터를 정의합니다. document를 파라미터화하려면 parameters 태그가 있는 셀을 지정하고 기본값을 제공합니다.

```{python}
#| tags: [parameters]

alpha = 0.1
ratio = 0.1
```

파라미터는 최상위 환경에서 사용할 수 있습니다.

```{python}
alpha
```

document를 새로운 파라미터 집합으로 실행하면, 기본값을 적절히 덮어쓰는 셀이 주입됩니다.

Knitr

Knitr에서는 표준 Knitr params YAML 옵션을 사용해 파라미터를 정의합니다. 예:

---
params:
  alpha: 0.1
  ratio: 0.1
---

파라미터는 params 목록에서 사용할 수 있습니다.

```{r}
params$alpha
```

Julia

Julia 엔진에서는 params YAML 옵션으로 파라미터를 정의합니다.

---
engine: julia
params:
  alpha: 0.1
  ratio: 0.1
---

각 키는 상수로 평가되며 해당 이름으로 접근할 수 있습니다. 즉, Julia 변수 이름으로 유효한 키만 허용됩니다. 예를 들어 some_key는 유효하지만 some-key는 유효한 YAML 키라도 Julia 변수 이름으로는 유효하지 않습니다.

```{julia}
alpha
```

렌더링

다른 파라미터로 렌더링하려면 명령줄에서 -P 플래그로 전달할 수 있습니다(이 방법은 .ipynb.qmd 모두에서 동작합니다).

Terminal
quarto render document.ipynb -P alpha:0.2 -P ratio:0.3

또는 렌더링에 사용할 파라미터 값을 정의한 YAML 파일을 만든 뒤, --execute-params 플래그로 quarto render를 호출할 수 있습니다.

Terminal
quarto render document.qmd --execute-params params.yml