导出多个股票一段时间的收盘价,要想求每个股票5日移动均价,并添加到新的一列。由于导出的文件是根据日期将股票的价格进行排列的。简单根据rolling(5)求出的是将所有的股票价格相加求均,显然不对。
你好同学,你先把你的数据分一下组一下然后rolling(5)就是每5天的平均了
your_df = your_df.groupby('ts_code').rolling(5).mean()
有帮助望采纳呢,有什么其他问题可以一起讨论哟
import pandas as pd
df = pd.read_csv('hhh.csv',sep='\\s+')##读入的时候注意我这里是空格为分隔符,如果是逗号的话sep=','
SMA = df.groupby(['ts_code'])['close'].rolling(5).mean()
df = df.groupby(['ts_code'])[['trade_date','open','close','low','high']].rolling(1).mean()
df['trade_date'] = df['trade_date'].astype('int')
col_name=df.columns.tolist() #
col_name.insert(5,'SMA_5') #
df=df.reindex(columns=col_name) #
df['SMA_5']=SMA #
df.to_csv('out.csv')#最后导出文件
好了你可以用一用试一试