Вызовите объект R из Python с помощью r. в документе Quarto

Я пытаюсь вызвать объект R из Python внутри документа Quarto:

      ---
title: "pandas"
format: html
jupyter: python3
---

```{r}
data("penguins", package = "palmerpenguins")
```

```{python}
penguins=r.penguins
penguins
```

Когда я выполняю куски один за другим в RStudio, все в порядке:

      > data("penguins", package = "palmerpenguins")
> reticulate::repl_python() # automatically executed by RStudio
Python 3.10.4 (/Users/.../3.10.4/bin/python3.10)
Reticulate 1.24 REPL -- A Python interpreter in R.
Enter 'exit' or 'quit' to exit the REPL and return to R.
>>> penguins=r.penguins
>>> penguins
       species     island  bill_length_mm  ...  body_mass_g     sex  year
0       Adelie  Torgersen            39.1  ...         3750    male  2007
1       Adelie  Torgersen            39.5  ...         3800  female  2007
...

Однако, когда я пытаюсь отобразить этот документ, возникает ошибка:

      ---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
Input In [1], in <cell line: 2>()
      1 # Python chunk
----> 2 penguins=r.penguins
      3 penguins

NameError: name 'r' is not defined

Согласно документации RMarkdown , больше ничего не требуется (например, rpy2).

я пытаюсь добавить library(reticulate)или же reticulate::repl_python()в блоке R, но это не решает проблему.

Примечание. Мне известно о старом аналогичном вопросе без ответа для RMarkdown.

Спасибо!

1 ответ

У меня нет объяснения, но удаление строки jupyter: python3в YAML решил мою проблему.

Другие вопросы по тегам