首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python大熊猫:基于多个标准计算滚动均值

Python大熊猫:基于多个标准计算滚动均值
EN

Stack Overflow用户
提问于 2019-03-24 19:45:40
回答 1查看 1.2K关注 0票数 0

我有一个数据显示了过去10天一批股票的收盘价。它有一个日期时间索引&股票可以通过它们的名称/代码来识别。你能帮我算出数据中每只股票的4天移动平均值吗?

我尝试过使用pd.DataFrame.rolling().mean()方法,但它只是给出了整个数据集的滚动平均值。不知道下一步该去哪里..。

sampleData = hundredDayData['2019-03-11':'2019-03-20'] sampleData['Close: 4 day mean'] = sampleData['Close'].rolling(window=4).mean() sampleData.head(24)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-24 19:54:19

代码语言:javascript
复制
df = pd.DataFrame({'code': ['a']*10+['b']*10, 'Close': [1]*20})
df.groupby('code')['Close'].rolling(window=4).mean().reset_index()
  • code计算组的滚动均值与组内滚动均值

注意:如果您的code's都是乱七八糟的(如下所示),那么您应该使用

代码语言:javascript
复制
df = pd.DataFrame({'code': ['a']*10+['b']*10+['a']*10, 'Close': [1]*30})
rolling = df.groupby('code')['Close'].rolling(window=4).mean().reset_index().set_index('level_1').rename(
    columns={'Close':'rolling'})[['rolling']]
df.merge(rolling, left_index=True, right_index=True)

在组级别上计算滚动均值,但使用索引将其合并回主dataframe作为新列。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55327858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档