对于一个给定的序列,我想改变每个元素的当前值,然后计算一个任意函数(这里是std
),如下代码所示:
import pandas as pd
import numpy as np
a = pd.Series(np.random.randn(10))
perturb = {}
for item in range(2,len(a)):
serturb = {}
for ep in np.arange(-1,1,0.1):
temp = a.ix[0:item]
temp.iloc[-1] += ep
serturb[ep] = temp.std()
perturb[item] = pd.Series(serturb)
perturb = pd.DataFrame(perturb).T
对于大量的数据,上面的代码将变得太慢。上述过程应用于DataFrame
时,将返回Panel
。有没有一种有效的方法,因为很多计算都在重复?在
目前没有回答
相关问题 更多 >
编程相关推荐