本文介绍了Pandas 移动平均线 – python程序员分享,有助于帮助完成毕业设计以及求职,是一篇很好的资料。
对技术面试,学习经验等有一些体会,在此分享。
我想在移动时间序列中添加移动平均值计算。
来自Quandl的原始数据
Exchange = Quandl.get("BUNDESBANK/BBEX3_D_SEK_USD_CA_AC_000", authtoken="xxxxxxx") # Value # Date # 1989-01-02 6.10500 # 1989-01-03 6.07500 # 1989-01-04 6.10750 # 1989-01-05 6.15250 # 1989-01-09 6.25500 # 1989-01-10 6.24250 # 1989-01-11 6.26250 # 1989-01-12 6.23250 # 1989-01-13 6.27750 # 1989-01-16 6.31250 # Calculating Moving Avarage MovingAverage = pd.rolling_mean(Exchange,5) # Value # Date # 1989-01-02 NaN # 1989-01-03 NaN # 1989-01-04 NaN # 1989-01-05 NaN # 1989-01-09 6.13900 # 1989-01-10 6.16650 # 1989-01-11 6.20400 # 1989-01-12 6.22900 # 1989-01-13 6.25400 # 1989-01-16 6.26550
我想在Value
之后使用相同的索引(Date
)将计算出的移动平均值作为新列添加到右侧。优选地,我还想将计算的移动平均值重命名为MA
。
参考方案
滚动平均值返回一个Series
,您只需要将其添加为DataFrame
(MA
)的新列,如下所述。
有关信息,在较新的熊猫版本中不建议使用rolling_mean
函数。我在示例中使用了新方法,请参见下面的pandas documentation引用。
警告在版本0.18.0之前,pd.rolling_*
,pd.expanding_*
和pd.ewm*
是模块级功能,现在已弃用。使用Rolling
,Expanding
和EWM.
对象以及相应的方法调用将它们替换。
df['MA'] = df.rolling(window=5).mean() print(df) # Value MA # Date # 1989-01-02 6.11 NaN # 1989-01-03 6.08 NaN # 1989-01-04 6.11 NaN # 1989-01-05 6.15 NaN # 1989-01-09 6.25 6.14 # 1989-01-10 6.24 6.17 # 1989-01-11 6.26 6.20 # 1989-01-12 6.23 6.23 # 1989-01-13 6.28 6.25 # 1989-01-16 6.31 6.27
Python Pandas:按分组分组,平均? – python
我有一个像这样的数据框:cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6 我想计算每个集群每个组织的平均时间。预期结果:cluster mean(time) 1 15 ((8+6)/2+23)/2 2 54 (74+34)/2 3 6 我不知道如何在熊猫中做到这一点,有人可以帮忙吗? 参考方案 如…
重命名默认ID python – python
我想连接两个dataFrames,但是两个数据具有不同的ID,所以结果是错误的这是我的代码data=pd.DataFrame(df.columns) data1=data.drop(axis=1,index=[0,1,2,3]).transpose() data1 这是dataframe1另一个数据框:y=sma_algo(df.loc['H+L&…
Python Pandas:在多列上建立布尔索引 – python
尽管至少有关于如何在Python的pandas库中为DataFrame编制索引的two good教程,但我仍然无法在一个以上的列上找到一种优雅的SELECT编码方式。>>> d = pd.DataFrame({'x':[1, 2, 3, 4, 5], 'y':[4, 5, 6, 7, 8]}) >…
pandas DataFrame:根据另一列中的布尔值计算总和 – python
我对Python相当陌生,我尝试在pandas中模拟以下逻辑我目前正在循环抛出行,并希望对前几行的AMOUNT列中的值求和,但只求和最后一次看到的“ TRUE”值。实际数据似乎效率低下(我的数据框大约有500万行)?想知道用Python处理这种逻辑的有效方法是什么?逻辑:逻辑是,如果FLAG为TRUE,我想对前几行的AMOUNT列中的值求和,但只求和最后一次…
Python-Excel导出 – python
我有以下代码:import pandas as pd import requests from bs4 import BeautifulSoup res = requests.get("https://www.bankier.pl/gielda/notowania/akcje") soup = BeautifulSoup(res.cont…
部分转自互联网,侵权删除联系
最新评论