Python:动态地将值追加到数据帧中

2024-05-19 00:00:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,成为专家的路还很长。下面显示的for循环方案有一个问题,因为我想将动态获得的所有值附加到数据帧中的特定列中,而不是列表中,因为我需要这些值​​对于我必须在相同for循环中进行的其他计算

我想说得更清楚些,df有3列:

  1. 第1栏:收盘价(收盘价)
  2. 第2列:快速指数移动平均(Fast_ema)
  3. 第3列:慢指数移动平均线(慢均线)

现在,我想在df中创建一个名为“LastBuyPrice”的新列,并将for循环生成的所有值放入该列,而不是列表中,如下所示

请给我一个合适的解决方案,提前感谢您提供的任何帮助

LastBuyPrice = []
LastBuyPrice.append(0)
adding = None

for i in range(1,len(df)):

  if (df.fast_ema[i-1] < df.slow_ema[i-1] and df.fast_ema[i] > df.slow_ema[i]): 
    adding = df.close[i]
    LastBuyPrice.append(adding)

  elif (df.fast_ema[i-1] > df.slow_ema[i-1] and df.fast_ema[i] < df.slow_ema[i]):
    LastBuyPrice.append(df.close[i])
    adding = None

  else: 
    if adding is not None:
      LastBuyPrice.append(adding)
    else:
      LastBuyPrice.append(0)

'''

Tags: andnonedf列表forcloseif指数

热门问题