我正在尝试根据不同时期(周、月、年)计算股票的平均开盘价。
在这里您可以看到我的 df 的一部分:我的数据框(完整的 df 有 987 行)
首先,我试图逐周计算平均开盘价。我找到了一个解决方案,但它是不可持续的(我的电脑花了 5 分钟才完成计算)。这里是 :
def average_opening_and_closing_prices(df):
array = [0]
n = df["weekofyear"].count()
j=0
for i in range(0,n):
array[j] = array[j] + kdf["Open"][i]
if i != n-1 and kdf["weekofyear"][i] != kdf["weekofyear"][i+1]:
array.append(0)
j = j+1
for x in array:
print(str(x) + " ")
average_opening_and_closing_prices(AMAZON_df)
你能帮我改进我的解决方案(主要是执行时间)吗?另外,例如,我想直接向我的 df 添加一列,其中包含每周的结果,而不是将结果放入数组中。
我不允许使用 pandas,我只能使用 pyspark 和 koalas。