1 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
一旦您對(duì) DataFrame 進(jìn)行了重新采樣,就很難(但并非不可能)將該結(jié)果(您的“ Mean”)與原始數(shù)據(jù)對(duì)齊。
相反,請(qǐng)考慮使用groupby,如下所示:
# example DataFrame
df = pd.DataFrame(
index=pd.date_range('2020-08-01', freq='3H', periods=20, name='date'),
data=dict(
x=np.random.normal(size=20),
y=np.random.normal(size=20),
))
def f(g, var):
mean = g.mean()
return (mean * (1 - var) < g) & (g < mean * (1 + var))
selx = df.groupby(pd.Grouper(freq='d')).x.apply(f, var=3.0)
df.loc[selx]
注意:selx只是一個(gè)bool時(shí)間序列;您可以根據(jù)上面的最后一行使用它來(lái)選擇整行。
添加回答
舉報(bào)