Вызовите объект 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 решил мою проблему.