【问题标题】:using babel org mode on emacs as a python data analysis environment在emacs上使用babel org模式作为python数据分析环境
【发布时间】:2025-12-23 06:35:10
【问题描述】:

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

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

Here is a link 到 babel 的简短文档,介绍文学编程与不同语言的一些 sn-ps 代码。

我使用 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 进行内联绘图。

【问题讨论】:

    标签: python emacs anaconda org-mode org-babel


    【解决方案1】:

    我认为 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 和 org-mode(以及许多其他东西)。您可能想访问他的blog archive 并浏览。

    【讨论】:

    • 感谢@Nick,我刚刚安装了 ob-ipython 并遇到了一些新问题......所以我正在阅读 github 问题。感谢您的链接,John Kitchin 博客看起来很吸引人。
    最近更新 更多