如何在初始化DataFrame时创建进度条?

Yan*_*eun 5 python dataframe pandas progress-bar

我想在每次将.csv文件加载到数据帧时创建新行时获取行数:

def file_len(fname):
    with open(fname) as f:
        for i, l in enumerate(f):
            pass
    return i + 1

csv_path = "C:/...."
max_length = file_len(csv_path)

data = read_csv(csv_path, sep=';', encoding='utf-8')
Run Code Online (Sandbox Code Playgroud)

使用该代码,我获得了最大行数,但我不知道如何在每次创建一行时获取数据帧中的行数.我想用它们来制作0-100%的进度条

fur*_*ras 6

你不能这样做 - 你必须修改read_csv功能和熊猫中的其他功能.


编辑:

现在似乎可以用它完成chunksize=rows_number.

使用只iterator=True对我不起作用 - 或者它可能需要更多行.

谢谢 Jeff

试试这个

import pandas as pd

from StringIO import StringIO

data = """A,B,C
foo,1,2,3
bar,4,5,6
baz,7,8,9
"""

reader = pd.read_csv(StringIO(data), chunksize=1)

for x in reader:
    print x
    print '--- next data ---'
Run Code Online (Sandbox Code Playgroud)

结果:

     A  B  C
foo  1  2  3
--- next data ---
     A  B  C
bar  4  5  6
--- next data ---
     A  B  C
baz  7  8  9
--- next data ---
Run Code Online (Sandbox Code Playgroud)