Ответ 1
Использование:
{python engine.path="C:/anaconda/python.exe"}
import pandas
измените C: /anaconda/python.exe
на свой путь к python
.
У меня возникают проблемы при запуске движка python в knitr. Я могу импортировать некоторые модули, но не другие. Например, я могу импортировать numpy, но не pandas.
{r, engine='python'}
import pandas
Я получаю сообщение об ошибке.
Quitting from lines 50-51 (prepayment.Rmd)
Error in (knit_engines$get(options$engine))(options) :
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named pandas
Calls: <Anonymous> ... process_group.block -> call_block -> block_exec -> in_dir -> <Anonymous>
In addition: Warning message:
running command ''python' -c 'import pandas' 2>&1' had status 1
Execution halted
Это должно быть что-то делать с системным путем и где я указываю.
Обычно в IPython я использую
import sys
sys.path.append('/path/to/directory/')
Добавление путей. Я не знаю, в чем проблема.
Использование:
{python engine.path="C:/anaconda/python.exe"}
import pandas
измените C: /anaconda/python.exe
на свой путь к python
.
По какой-то причине он немного отличается от IPython
Следующие работали для меня.
Сначала я перешел на IPython и сделал следующее
import pandas
import os
path = os.path.dirname(pandas.__file__)
Out[4]: '/Users/glendonthompson/anaconda/lib/python2.7/site-packages/pandas'
Затем в Rstudio в файле .Rmd я запустил
```{r, engine='python'}
import sys
sys.path.append('/Users/glendonthompson/anaconda/lib/python2.7/site-packages/')
import pandas
```
Может быть, это что-то связано с anaconda, возиться с моими пакетами....
Это также верно с knitr, используя механизм python, который вы должны кэшировать, иначе он не сохранит код в предыдущих кусках?
```{r, engine='python'}
import sys
sys.path.append('/Users/glendonthompson/anaconda/lib/python2.7/site-packages/')
```
```{r,engine = 'python'}
import pandas
```
Не работает.
Это случилось и со мной, в Атом.
Убедитесь, что оба файла находятся в одном каталоге. Поместите их в одну и ту же папку или путь.
Затем перейдите в Terminal или Command Line и введите
cd Downloads
(или любой другой большой каталог, в котором находятся файлы). Затем введите меньшую папку, например: cd _____
, например, cd animals
. Там вы можете открыть один файл, к которому вы хотите импортировать другой файл, набрав python3 -i ____.py
(имя файла). Убедитесь, что файл имеет from ___(master file) import *
и вы можете запустить код в терминале.
Это должно сработать. Проблема в том, что вы не можете импортировать, запустив код. Вместо этого вам нужно связать эти два терминала с помощью терминала или командной строки.