[Python] How do I make a progress bar for loading pandas DataFrame from a large xlsx file?

Discussão em 'Python' iniciado por Stack, Julho 31, 2025.

  1. Stack

    Stack Membro Participativo

    from 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)


    I took this code and edited it so that I create a DataFrame from load_excel rather than using random numbers:

    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)


    This gave me an error, so I changed df.progress_apply to this:

    df.progress_apply(lambda x: x)


    Here is the final code:

    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)


    This results in a progress bar, but it doesn't actually show any progress, rather it loads the bar, and when the operation is done it jumps to 100%, defeating the purpose.

    My question is this: How do I make this progress bar work?
    What does the function inside of progress_apply actually do?
    Is there a better approach? Maybe an alternative to tqdm?

    Any help is greatly appreciated.

    Continue reading...

Compartilhe esta Página