我可以使用带有地图功能的tqdm进度条来遍历数据框/系列行吗?
专门针对以下情况:
def example(x):
x = x + 2
return x
if __name__ == '__main__':
dframe = pd.DataFrame([{'a':1, 'b': 1}, {'a':2, 'b': 2}, {'a':3, 'b': 3}])
dframe['b'] = dframe['b'].map(example)
答案 0 :(得分:5)
由于tqdm与熊猫的集成,您可以使用progress_map
函数代替map
函数。
注意:为此,您应该在代码中添加tqdm.pandas()
行。
因此,请尝试以下操作:
from tqdm import tqdm
def example(x):
x = x + 2
return x
tqdm.pandas() # <- added this line
if __name__ == '__main__':
dframe = pd.DataFrame([{'a':1, 'b': 1}, {'a':2, 'b': 2}, {'a':3, 'b': 3}])
dframe['b'] = dframe['b'].progress_map(example) # <- progress_map here
(添加
tqdm.pandas()
之后)...您可以使用progress_apply
代替apply
和progress_map
而不是map