【Python応用】tqdmを用いたプログレスバーでの進捗状況の可視化

Python

ここでは、tqdmを用いたプログレスバーでの進捗状況の可視化について解説しています。

この記事の対象

  • 実行の進捗を可視化したい方
  • プログレスバーについて知りたい方
  • pythonでプログレスバーを使用したい方
スポンサーリンク
スポンサーリンク

Tqdmのインストール

tqdm」は外部ライブラリです。準備として、以下をインストールします。

$ pip install tqdm

目的

大量のデータを操作する際、どのくらいの進捗状況なのか知りたいときに使用しました。

以下のプログラムは、pandasで複数のcsvファイルを読み込んだ時に可視化したものになります。

プログラム

デフォルトのtqdm

from tqdm import tqdm
import time
import glob
import pandas as pd
#1---フォルダ内のCSVファイルの一覧を取得
files = sorted(glob.glob('*.csv'))
#2---ファイル数を取得
file_number = len(files)
#3---CSVファイルの中身を読み出して、リスト形式にまとめる
csv_list = []
for file in tqdm(files):
    csv_list.append(pd.read_csv(file,encoding='shift_jis',skiprows=[1]))
    time.sleep(1)
#100%|█████████████████████████████████████████████████████| 11/11 [00:11<00:00,  1.03s/it]

上記のプログラムで、進捗状況を知りたかったのはデータの読み込みの進捗状況でした。

よって、ここではfor構文で使用しました。

プログレスバーの名前設定 ⇒ desc

from tqdm import tqdm
import time

for i in tqdm(range(100), desc="Going"):
    time.sleep(1)
#Going:  90%|██████████████████████████████████████████████████████████████████▌       | 90/100 [01:31<00:10,  1.01s/it]

プログレスバーに名前を設定する事も可能です。使用する際は引数に「desc」を設定するだけです。

まとめ

プログレスバーを用いるときはtqdmを使用することで可視化できます。

大量のデータを操作している際、ほんとに操作できているのか気になるときにプログレスバーを用いるのも有効です。

タイトルとURLをコピーしました