在 emacs 上使用 babel org 模式作为 python 数据分析环境

using babel org mode on emacs as a python data analysis environment

我已经开始在 emacs 25.3.1 上使用 org-babel。用于我的初始化文件和组织。 我正在使用 ein 到 运行 jupyter notebook,想知道是否可以以相同的方式使用 org-babel

我使用 ein notebook 使用 numpypandasmatplotlib python 库进行数据分析,它工作得很好但是 seeing examples to similar work done with R and gnuplot on babel in org-mode 我想知道它是否适用于 python 分析包。

Here is a link 到 babel 的简短文档,用几段不同语言的代码介绍文学编程。

我使用 Python 版本 3.5.4 anaconda,它可以方便地安装所有库,并且在 emacs 上使用 anaconda-mode 我可以访问所有功能,但在 babel 中:

#+BEGIN_SRC python :results output
import numpy
arr = np.arange(10).reshape(2, 5)
a
#+END_SRC

我认为 org 文件中的这段代码并没有真正看到 anaconda 安装,因为它使用 emacs python-模式,因此没有导入 numpy...

我喜欢文学编程的想法,它可能不如带有代码单元格和降价单元格的笔记本有用,但考虑到 org-mode 的可定制性,在那种环境中工作可能会非常有趣。

从这里开始编辑

我发现 this implementation in a previous question @bowen.li 的答案有有用的代码,可以将 interperter 更改为 ipython,因此可以访问缺少的库。我仍在寻找实现更多功能的方法,例如使用 matplotlib 进行内联绘图。

我认为 anaconda 与此无关:您的脚本有问题。如果我这样做:

#+BEGIN_SRC python :results output
import numpy as np

a = np.arange(10).reshape(2, 5)
print(a)
#+END_SRC

我明白了

#+RESULTS:
: [[0 1 2 3 4]
:  [5 6 7 8 9]]

您确实需要加载 ob-python 才能将 babel 与 python 一起使用,但这是标准操作:您需要加载 ob-XXX 才能将 babel 与 XXX 一起使用。

John Kitchin 广泛使用 python 和组织模式(以及许多其他东西)。您可能想访问他的 blog archive 并浏览。