我经常对超过1500万行的数据帧执行pandas操作,我很乐意访问特定操作的进度指示器.
是否存在基于文本的pandas split-apply-combine操作的进度指示器?
例如,在以下情况中:
df_users.groupby(['userID', 'requestDate']).apply(feature_rollup)
Run Code Online (Sandbox Code Playgroud)
where feature_rollup是一个涉及多少DF列的函数,并通过各种方法创建新的用户列.对于大型数据帧,这些操作可能需要一段时间,因此我想知道是否可以在iPython笔记本中使用基于文本的输出来更新我的进度.
到目前为止,我已经尝试了Python的规范循环进度指示器,但它们没有以任何有意义的方式与pandas交互.
我希望在pandas库/文档中我忽略了一些让人们知道split-apply-combine进度的东西.一个简单的实现可能会查看apply函数工作的数据帧子集的总数,并将进度报告为这些子集的已完成部分.
这可能是需要添加到库中的吗?
是否可以从ipython内部运行python脚本(而不是模块)而不指示其路径?我试图设置PYTHONPATH但它似乎只适用于模块.我想执行
%run my_script.py
Run Code Online (Sandbox Code Playgroud)
不在包含该文件的目录中.
我发现自己import numpy as np每次打开python解释器时都会打字.如何设置python或ipython解释器以便自动导入numpy?
我正在使用ipython Jupyter笔记本.假设我定义了一个在屏幕上占用大量空间的函数.有没有办法折叠细胞?
我希望函数保持执行和可调用,但我想隐藏/折叠单元格以便更好地可视化笔记本.我怎样才能做到这一点?
据我所知,%debug magic可以在一个单元格内进行调试.
但是,我有跨多个单元格的函数调用.
例如,
In[1]: def fun1(a)
def fun2(b)
# I want to set a breakpoint for the following line #
return do_some_thing_about(b)
return fun2(a)
In[2]: import multiprocessing as mp
pool=mp.Pool(processes=2)
results=pool.map(fun1, 1.0)
pool.close()
pool.join
Run Code Online (Sandbox Code Playgroud)
我尝试了什么:
我试着设置%debug在cell-1的第一行.但它甚至在执行cell-2之前立即进入调试模式.
我试图%debug在代码之前添加行return do_some_thing_about(b).但随后代码永远运行,永不停止.
在ipython笔记本中设置断点的正确方法是什么?
我对python/matplotlib都很陌生,并通过ipython笔记本使用它.我正在尝试向现有图形添加一些注释线,我无法弄清楚如何在图形上渲染线条.因此,例如,如果我绘制以下内容:
import numpy as np
np.random.seed(5)
x = arange(1, 101)
y = 20 + 3 * x + np.random.normal(0, 60, 100)
p = plot(x, y, "o")
Run Code Online (Sandbox Code Playgroud)
我得到以下图表:

那么我如何添加从(70,100)到(70,250)的垂直线?从(70,100)到(90,200)的对角线怎么样?
我尝试了一些事情,Line2D()但除了我之外什么也没有产生混淆.在R我只想用段()函数,这将增加线段.有没有等价的matplotlib?
如何正确关闭IPython Notebook?
目前,我只关闭浏览器选项卡,然后Ctrl+C在终端中使用.
不幸的是,既不exit()滴答也不滴答Kill kernel upon exit确实有帮助(他们确实杀了内核,但没有退出iPython).
在iPython笔记本中,我有一个while循环,它print实时监听串行端口和接收的数据.
我想要实现的只显示最新的接收数据(即只显示最新数据的一行.单元格输出区域没有滚动)
我需要(我认为)是在接收新数据时清除旧单元格输出,然后打印新数据.我想知道如何以编程方式清除旧数据?
每次打字时都会感到恼火exit(),我会收到确认退出的提示; 当然我要退出!否则,我不会写exit()!!!
有没有办法覆盖IPython的默认行为,让它退出没有提示?
我试图在Ipython Notebook中使用pandas绘制一些数据,虽然它给了我对象,但它实际上并没有绘制图形本身.所以它看起来像这样:
In [7]:
pledge.Amount.plot()
Out[7]:
<matplotlib.axes.AxesSubplot at 0x9397c6c>
Run Code Online (Sandbox Code Playgroud)
之后图表应该遵循,但它根本不会出现.我已经导入了matplotlib,所以这不是问题所在.我需要导入任何其他模块吗?
ipython ×10
python ×9
pandas ×2
jupyter ×1
matplotlib ×1
numpy ×1
path ×1
pdb ×1
python-2.7 ×1