gpt4 book ai didi

python - 在 n 行后在 pandas 中求和

转载 作者:太空宇宙 更新时间:2023-11-04 05:46:52 25 4
gpt4 key购买 nike

我正在处理(当前)索引和列的数据框。索引是日期,列是数字。我想先定位到值小于某个级别的那一行:

list = []
for index,row in df.iterrows():
if row < -0.1:
list.append(#sum the next 60 values)

我觉得这应该很简单,但我无法理解 pandas 的索引和选择数据的文档。

除此之外,如果我再次拥有一个索引(日期)和超过 1 列的值,我将如何进行。每列的总和应该只有 30、60、90 等深度。我想我会在上面添加一个 for 循环:

for i in df.columns:
#add logic here

编辑:这是数据的样子:

data

Date Ticker

2015-06-23 -0.010959
2015-06-24 -0.002770
2015-06-25 0.005556
2015-06-26 0.008287
2015-06-29 -0.013699
2015-06-30 0.005556
2015-07-01 0.006077
2015-07-02 -0.010983

最佳答案

尝试通过查找满足条件的所有行的整数索引来构建索引列表,如:

import numpy as np
from pandas import DataFrame

df = DataFrame([["2015-06-23",-0.010959],
["2015-06-24", -0.102770],
["2015-06-25", 0.005556],
["2015-06-26", 0.008287],
["2015-06-29", -0.113699],
["2015-06-30", 0.005556],
["2015-07-01", 0.006077],
["2015-07-02", -0.010983]], columns=['Date','Ticker'])

df.set_index(['Date'])

index_list = list(np.where(df.Ticker < -0.1)[0])

然后遍历这些索引位置以获取您的值:

list = []
for i in index_list:
list.append(df.loc[i:i+30-1]['Ticker'].sum())

关于python - 在 n 行后在 pandas 中求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31862469/

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