不使用并行化(Swifter、Parallel)是否可以不通过索引立即进行即时计算?

Is it possible without using parallelization (Swifter, Parallel) to make an instant calculation immediately without passing through the index?

是否可以在不使用并行化(Swifter、Parallel)的情况下立即进行即时计算而不通过索引,例如通过对所有数据集使用“apply”函数?

%%time
import random
df = pd.DataFrame({'A':random.sample(range(200), 200)})

for j in range(200):
    for i in df.index:
        df.loc[i,'A_last_{}'.format(j)] = df.loc[(df.index < i) & (df.index >= i - j),'A'].mean()
%%time
import random
df = pd.DataFrame({'A':random.sample(range(200), 200)})

首先计算总和。

df[1] = df['A'].shift()
for j in range(2, 200):
    df[j] = df[j-1].fillna(0) + df['A'].shift(j)

然后进行均值除法并处理格式

df = df.set_index('A')
df.divide(df.columns, axis=1)\
    .fillna(method='ffill', axis=1)\
    .rename(lambda x: f'A_last_{x}', axis=1)\
    .reset_index()