gpt4 book ai didi

Python 增长字典或增长数据框 - 在循环中追加

转载 作者:太空宇宙 更新时间:2023-11-03 20:32:10 29 4
gpt4 key购买 nike

我正在尝试编写代码,在循环中从在线源收集数据,并在每次迭代中使用 pandas 操作这些数据。最初我想我应该在循环外初始化一个字典,获取数据,将字典转换为循环内的数据帧,然后对其执行操作。但是制作字典而不是仅仅制作数据框并附加到循环中的数据框感觉很奇怪。但据我了解,pandas 并不是真正“设计”用于逐个单元更新(而不是矢量更新)。最有效的方法是什么?

import pandas as pd
d = {'a':[], 'b':[], 'c':[], 'x':[], 'z':[]}
for i in range(100):
d['a'].append(f'some info {i}')
d['b'].append(f'more info {i}')
d['c'].append(i)
d['x'].append(i*2)
d['z'].append(np.nan) # ???

df = pd.DataFrame(d)
# Some function that does calculations on df cols and returns df with new cols
df['z'] = 1

最佳答案

Pandas 通常用于执行数据操作和数据建模,因此每次在循环中向数据帧添加数据可能效率低下。请注意,这在很大程度上取决于循环中的迭代次数。如果它们与数据帧的最终长度相比非常少,你当然可以这样做。否则,似乎最好在循环内获取字典中的所有数据,当你收集完数据后,你可以将其转换为数据帧进行分析,然后删除字典

关于Python 增长字典或增长数据框 - 在循环中追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57421280/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com