_tqdm_notebook import tqdm_notebook tqdm_notebook.pandas() 然后,就可以简单地.apply()用.progress_apply()它替换所有功能
配合pandas中的apply tqdm对pandas中的apply()过程提供了特殊的支持,因为pandas中的apply()本质上就是串行循环运算,你可以将pandas中的任何apply操作替换为progress_apply...,并且记住每个单独的progress_apply前要先执行tqdm.pandas(),就像下面的例子一样: ?
配合pandas中的apply tqdm对pandas中的apply()过程提供了特殊的支持,因为pandas中的apply()本质上就是串行循环运算,你可以将pandas中的任何apply操作替换为progress_apply...,并且记住每个单独的progress_apply前要先执行tqdm.pandas(),就像下面的例子一样: 图9 3 alive-progress常用方法 虽然与tqdm一样都是为了给循环过程加上进度条而诞生的库
因此在计算量很大时如果有一个进度条来监视运行进度就很舒服,在(数据科学学习手札53)Python中tqdm模块的用法中,我对基于tqdm为程序添加进度条做了介绍,而tqdm对pandas也是有着很好的支持,我们可以使用progress_apply...()代替apply(),并在运行progress_apply()之前添加tqdm.tqdm.pandas(desc='')来启动对apply过程的监视,其中desc参数传入对进度进行说明的字符串,下面我们在上一小部分示例的基础上进行改造来添加进度条功能
.progress_apply, .progress_applymap .progress_map 这些方法与apply、applymap和map的使用相同,不同之处是它们将显示进度条。 ?
我们可以使用progress_apply()代替apply(),并在运行progress_apply()之前添加tqdm.tqdm.pandas(desc='')来启动对apply过程的监视。
from tqdm import notebook notebook.tqdm().pandas() 现在所有的Pandas DataFrame 都有了新的方法: .progress_apply, .
)) >>> tqdm_pandas(tqdm()) # can use tqdm_gui, optional kwargs, etc >>> # Now you can use `progress_apply...` instead of `apply` >>> df.groupby(0).progress_apply(lambda x: x**2) 有时间继续补完…
这里用到的是tqdm模块,我们将其导入进来 from tqdm import tqdm, tqdm_notebook tqdm_notebook().pandas() 然后将apply方法替换成progress_apply
# Now you can use `progress_apply` instead of `apply`# and `progress_map` instead of `map`df.progress_apply...(lambda x: x**2)# can also groupby:# df.groupby(0).progress_apply(lambda x: x**2) # -- Source code
方案1:tqdm 1from tqdm import tqdm 2import time 3 4tqdm.pandas() 5 6df['col'] = df['col'].progress_apply
这里有几种方法: 第一种方法:采用 tqdm 库,代码例子: from tqdm import tqdm import time tqdm.pandas() df['col'] = df['col'].progress_apply
pip install tqdm 在这里插入图片描述 通过使用progress_apply函数,我们可以得到跟使用apply函数一样的结果,附赠进度条相信我,在你appy函数很复杂且样本数很大时,你会很感谢有进度条的存在
领取专属 10元无门槛券
手把手带您无忧上云