来源:https://pypi.org/project/tqdm/
import pandas as pd
import numpy as np
from tqdm import tqdm
df = pd.DataFrame(np.random.randint(0, 100, (100000, 6)))
tqdm.pandas(desc="my bar!")p`
df.progress_apply(lambda x: x**2)
我拿了这段代码并进行了编辑,以便从load_excel创建一个DataFrame而不是使用随机数字:
import pandas as pd
from tqdm import tqdm
import numpy as np
filename="huge_file.xlsx"
df = pd.DataFrame(pd.read_excel(filename))
tqdm.pandas()
df.progress_apply(lambda x: x**2)
这个操作导致了错误,所以我将df.progress_apply更改为:
df.progress_apply(lambda x: x)
这是最终代码:
import pandas as pd
from tqdm import tqdm
import numpy as np
filename="huge_file.xlsx"
df = pd.DataFrame(pd.read_excel(filename))
tqdm.pandas()
df.progress_apply(lambda x: x)
这会生成一个进度条,但它实际上不会显示任何进度,而是加载进度条,在操作完成时跳到100%,从而失去了目的。
我的问题是:如何使这个进度条起作用?
progress_apply内部的函数实际上是做什么的?
是否有更好的方法?也许是tqdm的替代方案?
非常感谢任何帮助。