首页 > 解决方案 > Swifter + Pandas:使用 swifter + apply() 后脚本不会继续

问题描述

我有一个从 MySQL 加载数据的脚本。之后,构建了一个 Pandas DataFrame。在它上面我确实应用了几种apply方法。

当我运行脚本时,没有swifter,这是输出:

Duration Job0_sql:  0.011724
Duration Job0_df:   146.875376
<class 'pandas.core.frame.DataFrame'>
Int64Index: 3316 entries, 0 to 3315
Data columns (total 57 columns):
id                       3316 non-null int64
routerName               3316 non-null object
routerLabel              3306 non-null object
[...]

这意味着 SQL 查询持续了 0.011724 秒。DataFrame上的整个过程,146.9秒。最后我做 print df.info()。它还从数据本身生成一些图(.jpegs)。

沿着代码使用后df.swifter.apply(.),输出显示不同的东西,并没有继续......

Duration Job0_sql:  0.012964
Pandas Apply: 100%|██████████████████████████| 48516/48516 [00:57<00:00, 845.45it/s]
Pandas Apply: 100%|██████████████████████████| 3316/3316 [00:00<00:00, 4463.01it/s]

我的意思是,在swifter我既没有时间Job0_df也没有处理情节之后:脚本在进度条之后就停在那里。

为什么代码停在那里?根据文档,我们只需要swifter在方法前面附加关键字apply

有没有人经历过这样的事情?

标签: pythonpandasswifter

解决方案


推荐阅读