标签: ipython-notebook

按单元格而不是按行保存#:IPython%save magic:有办法吗?

我正在IPython Notebook中创建一个Django教程,我希望在教程进行过程中使用%save魔术保存.py文件来创建/编辑/推进网站.问题在于%save通过指定要保存的行来实现神奇.毫无疑问,当用户在文件乱序或多次执行单元格时,行号将发生变化.

我想这样工作:

some .py file imported into the notebook.
# do all sorts of website things
%save -f this.py file
Run Code Online (Sandbox Code Playgroud)

它将保存单元格的内容而不需要行号.有没有办法用%save魔法的现有功能来做到这一点?

javascript python ipython ipython-notebook

4
推荐指数
1
解决办法
1397
查看次数

matplotlib 中的 subplots_adjust 在 IPython Notebook 中不起作用

我有以下代码不起作用:

import matplotlib.pyplot as plt

# Make the plot
fig, axs = plt.subplots(3, 1, figsize=(3.27, 6))
axs[0].plot(range(5), range(5), label='label 1')
axs[0].plot(range(5), range(4, -1, -1), label='label 2')
axs[0].legend(bbox_to_anchor=(0, 1.1, 1., 0.1), mode='expand', ncol=2, frameon=True, borderaxespad=0.)

# Adjust subplots to make room
fig.subplots_adjust(top=.5)

fig.savefig('test.png', format='png', dpi=300)
Run Code Online (Sandbox Code Playgroud)

可以看出 fig.subplots_adjust 根本不起作用。

我使用的是 WinPython 3.3.2.3 64 位,matplotlib 版本 1.3.0 和 CPython 3.3。这发生在 IPython Notebook 中。后端是内联的。笔记本的输出是完整的,但是输出文件裁剪不当。在 notebook 和保存的文件中, subplots_adjust 命令无效。

上面代码的输出

python matplotlib ipython-notebook

4
推荐指数
1
解决办法
2511
查看次数

在Windows上使用IPython笔记本500服务器错误

我刚刚在Windows 7 Professional 64位上安装了全新的IPython笔记本.

我采取的步骤是:

  1. http://python.org安装Python 3.4.1
  2. > pip install ipython[notebook]
  3. > pip install pywin numpy pygments nodeenv

我可以打开笔记本了.

但是,当我选择File > Print PreviewFile > Download as HTML我得到500服务器错误.

堆栈跟踪是:

2014-08-07 09:44:25.431 [NotebookApp] Loaded template full.tpl
C:\Python34\lib\site-packages\IPython\nbconvert\filters\markdown.py:78: UserWarning: Node.js 0.9.12 or later wasn't found.
Nbconvert will try to use Pandoc instead.
  "Nbconvert will try to use Pandoc instead.")
WARNING:tornado.general:500 GET /nbconvert/html/Users/Tom%20Oakley/Documents/IPython%20test.ipynb?download=false (::1): nbconvert failed: you need to have pywin32 installed for this to work
ERROR:tornado.access:{
  "Dnt": …
Run Code Online (Sandbox Code Playgroud)

python ipython windows-7-x64 node.js ipython-notebook

4
推荐指数
1
解决办法
6382
查看次数

anaconda ipython笔记本未在服务器设置中启动

我正在尝试在Terminal.com上安装Anaconda。我按照网站上列出的说明进行操作:https : //gist.github.com/iamatypeofwalrus/5183133

安装成功。我可以在终端上输入ipython来登录python。但是当我输入$ ipython notebook

我在终端上收到以下错误消息

[I 10:35:24.760 NotebookApp] Using existing profile dir: u'/root/.ipython/profile_default'
[I 10:35:24.872 NotebookApp] Using MathJax from CDN: https://cdn.mathjax.org/mathjax/latest
/MathJax.js
[I 10:35:24.891 NotebookApp] The port 8888 is already in use, trying another random port.
Traceback (most recent call last):
  File "/root/anaconda/bin/ipython", line 6, in <module>
    sys.exit(start_ipython())
  File "/opt/ipython/IPython/__init__.py", line 120, in start_ipython
    return launch_new_instance(argv=argv, **kwargs)
  File "/opt/ipython/IPython/config/application.py", line 548, in launch_instance
    app.initialize(argv)
  File "<string>", line 2, in initialize
  File "/opt/ipython/IPython/config/application.py", line 74, in catch_config_error
    return …
Run Code Online (Sandbox Code Playgroud)

ipython ipython-notebook anaconda

4
推荐指数
2
解决办法
6228
查看次数

如何配置我的IPython笔记本,以便始终将执行时间显示为输出的一部分?

有时我执行一个需要很长时间才能计算的方法

In [1]:

long_running_invocation()

Out[1]:
Run Code Online (Sandbox Code Playgroud)

我常常有兴趣知道花了多少时间,所以我必须写下这个:

In[2]:
    import time

    start = time.time()
    long_running_invocation()
    end = time.time()
    print end - start
Out[2]: 1024
Run Code Online (Sandbox Code Playgroud)

有没有办法配置我的IPython笔记本,以便它自动打印我正在制作的每个调用的执行时间,如下例所示?

In [1]:

long_running_invocation()

Out[1] (1.59s):
Run Code Online (Sandbox Code Playgroud)

ipython-notebook

4
推荐指数
2
解决办法
1780
查看次数

IPython魔法是如何工作的

ipthon-sql是ipython的扩展,我首先通过pip install ipython-sql安装它

项目在这里:https://github.com/catherinedevlin/ipython-sql

我的问题是:

当我输入%load_ext sql并按SHIFT + ENTER时,IPython执行这个魔术句的详细程序是什么?谢谢 ...

在此输入图像描述

ipython ipython-notebook ipython-magic

4
推荐指数
1
解决办法
1314
查看次数

ipython3 - 没有名为notebook的模块

我在我的Ubuntu 14.04机器上安装了ipython3和ipython3-notebook.

命令'ipython3'在控制台中打开一个ipython实例,按预期运行Python 3.4.

但是当我尝试使用浏览器版本时

ipython3 notebook
Run Code Online (Sandbox Code Playgroud)

我得到一个"ImportError:没有名为'notebook'的模块"

我尝试重新安装ipython3-notebook但得到消息"ipython3-notebook已经是最新版本了".

我在这里错过了什么?

ipython ipython-notebook

4
推荐指数
1
解决办法
2965
查看次数

将局部变量传递给ipyparallel集群的最佳方法

我在ipython笔记本中运行模拟,该笔记本由七个相互依赖的函数组成,需要13个不同的参数.在其他函数中调用某些函数以允许一个函数运行整个模拟.模拟涉及操纵两个参数,总共> 20k次迭代.两个模拟可以异步运行.由于每次迭代需要大约1.5秒,我正在研究并行处理.

当我第一次尝试ipyparallel时,我得到了一个未定义的全局名称错误.从某种意义上讲,无法找到本地对象的工人.为了避免花费相当多的时间去挖掘兔子洞,将一大堆物品传递给所有工人的最简单方法是什么?以这种方式使用ipyparallel时还有其他需要考虑的问题吗?

ipython-notebook ipython-parallel

4
推荐指数
1
解决办法
2763
查看次数

来自python worker的错误:/ bin/python:没有名为pyspark的模块

我正在尝试使用ipython建立一个漂亮的spark开发环境.首先启动ipython,然后:

import findspark
findspark.init()

from pyspark.conf import SparkConf
from pyspark.context import SparkContext
conf = SparkConf()
conf.setMaster('yarn-client')
sc = SparkContext(conf=conf)
Run Code Online (Sandbox Code Playgroud)

这是来自应用程序UI,我可以看到执行程序在工作节点上.

申请ui

但是,当我尝试这个:

rdd = sc.textFile("/LOGS/201511/*/*")
rdd.first()
Run Code Online (Sandbox Code Playgroud)

我明白了:

Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.runJob.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 0.0 failed 4 times, most recent failure: Lost task 0.3 in stage 0.0 (TID 3, d142.dtvhadooptest.com): org.apache.spark.SparkException:
Error from python worker:
  /bin/python: No module named pyspark
PYTHONPATH was:
  /data/sdb/hadoop/yarn/local/usercache/hdfs/filecache/64/spark-assembly-1.4.1.2.3.2.0-2950-hadoop2.7.1.2.3.2.0-2950.jar
java.io.EOFException
        at java.io.DataInputStream.readInt(DataInputStream.java:392)
        at org.apache.spark.api.python.PythonWorkerFactory.startDaemon(PythonWorkerFactory.scala:163)
        at …
Run Code Online (Sandbox Code Playgroud)

python ipython ipython-notebook apache-spark pyspark

4
推荐指数
1
解决办法
5161
查看次数

在jupyter/iPython笔记本脚本和类方法之间同步代码

我试图找出保持Jupyter/iPython笔记本中的代码和同步的类方法中的相同代码的最佳方法.这是用例:

我写了一个在笔记本中使用pandas的长脚本,并且有多个单元使开发变得容易,因为我可以检查笔记本中的中间结果.这对于pandas脚本非常有用.我将该工作代码下载到Python".py"文件中,并将该脚本转换为程序中Python类中的方法,该方法使用输入数据进行实例化,并根据该方法提供输出.一切都很好.Python类在更大的应用程序中使用,因此这是真正的可交付成果.

但是在该方法的实现中存在某个数据集的错误,这也存在于我的脚本中.我可以回到我的笔记本上,逐步浏览各种细胞以找到问题.我解决了这个问题,但后来我必须在常规的Python类方法代码中仔细进行更改.这有点痛苦.

理想情况下,我希望能够跨单元格运行类方法,因此我可以检查中间结果.我无法弄清楚如何做到这一点.

那么保持脚本代码和嵌入在类方法中的代码同步的最佳做法是什么?

是的,我知道我可以将类导入到笔记本中,但是我失去了通过单个单元格查看类方法中的中间结果的能力,这是我在纯脚本时所做的.使用pandas,这非常有用.

python pandas ipython-notebook jupyter jupyter-notebook

4
推荐指数
1
解决办法
1009
查看次数