针对选出记录计算比上期

任务:某支股票股价最高的三个交易日的交易信息和涨幅

Python

1 import pandas as pd
2 stock1001_file = "E:\\txt\\stock1001_price.txt"
3 stock1001 = pd.read_csv(stock1001_file,sep = '\t')
4 CL = stock1001['CL']
5 CL_psort = CL.argsort()[::-1].iloc[:3].values
6 CL_psort_shift1 = CL_psort-1
7 CL_rise = CL[CL_psort].values/CL[CL_psort_shift1].values-1
8 max_3 = stock1001.loc[CL_psort].reset_index(drop = True)
9 max_3['RISE'] = CL_rise
10 print(max_3)

Python不可以利用位置直接计算比上期,需要构造一个上期的位置序列再计算。

集算器

  A  
1 =股价表.sort(交易日)  
2 =A1.psort(收盘价:-1)([1,2,3]) 股价最高的三天位置
3 =A1.calc(A2, 收盘价/收盘价[-1]-1) 计算这三天涨幅
4 =A1(A2).new(交易日,收盘价,A3(#):涨幅)  

集算器很擅长这些与次序及位置相关的计算,代码简捷且符合思路过程。