13

在 knitr 中运行 python 引擎时遇到问题。我可以导入一些模块,但不能导入其他模块。例如,我可以导入 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/')

添加路径。我不知道问题是什么。

4

2 回答 2

3

利用:

{python engine.path="C:/anaconda/python.exe"}
import pandas

改变C:/anaconda/python.exe你的python路径。

于 2018-07-28T11:58:18.717 回答
1

这也发生在我身上,在 Atom 中。

检查以确保这两个文件位于同一目录中。将它们放在同一文件夹或路径中。

然后,进入终端或命令行并输入

cd Downloads

(或文件所在的任何大目录)。然后,键入较小的文件夹,例如:cd _____,例如cd animals. python3 -i ____.py在那里,您可以通过键入(文件名)打开您希望将另一个文件导入到的一个文件。确保文件具有from ___(master file) import *并且您可以在终端中运行代码。

这应该有效。问题是您无法通过运行代码来导入。相反,您必须使用终端或命令行链接两者。

于 2018-08-02T19:13:46.073 回答