-1
- я есть длина данных составляет более 3000.
- ниже код для создания 20days значение (Volume Ration на фондовом рынке)
- потребовалось более 2 мин.
есть ли хороший способ сократить время работы.Как более эффективно рассчитать соотношение прокатки
import pandas as pd import numpy as np from pandas.io.data import DataReader import matplotlib.pylab as plt data = DataReader('047040.KS','yahoo',start='2010') data['vr']=0 data['Volume Ratio']=0 data['acend']=0 data['vr'] = np.sign(data['Close']-data['Open']) data['vr'] = np.where(data['vr']==0,0.5,data['vr']) data['vr'] = np.where(data['vr']<0,0,data['vr']) data['acend'] = np.multiply(data['Volume'],data['vr']) for i in range(len(data['Open'])): if i<19: data['Volume Ratio'][i]=0 else: data['Volume Ratio'][i] = ((sum(data['acend'][i-19:i]))/((sum(data['Volume'][i-19:i])-sum(data['acend'][i-19:i]))))*100
пожалуйста подумайте над редактированием названия: сделайте его более конкретным для yo ур проблема. –
Можете ли вы добавить [Минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve)? – jezrael