gpt4 book ai didi

python - 每隔一段时间从 Pandas 数据框中选择值

转载 作者:行者123 更新时间:2023-11-28 22:39:50 26 4
gpt4 key购买 nike

我正在尝试运行一个计算,该计算一次需要从大量(数百)个输入列表中输入多个(10)个输入。

我有一个随机值的数据框:

s = pd.Series(np.random.randint(0,1000,size=240))

我想取前 10 个值并将它们放在一个列表中,然后运行计算。然后我想从数据框中获取接下来的 10 个值并将它们添加到新列表中并再次运行该计算。

你如何在 Pandas 中做到这一点?

最佳答案

如果你想懒惰地提取值而不先创建一个完整的列表,tolist() 会这样做:

from itertools import islice

s = pd.Series(np.random.randint(0, 1000, size=240))

def n_sli(s,n):
it = s.__iter__()
for sli in iter(lambda:list(islice(it, n)), []):
yield sli

for sli in n_sli(s, 10):
print(sli)

您可以看到这与读取其他答案中建议的所有数据一样执行,而无需在内存中存储超过 n 个值:

In [30]: s = pd.Series(np.random.randint(0,1000,size=200000))

In [31]: %%timeit
for r in n_sli(s, 1000):
pass
....:
100 loops, best of 3: 8.82 ms per loop

In [32]: %%timeit
for r in chunks(s, 1000):
pass
....:
100 loops, best of 3: 8.85 ms per loop

关于python - 每隔一段时间从 Pandas 数据框中选择值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34363696/

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