无法访问在python函数外部定义的空数据帧

时间:2017-08-17 17:04:23

标签: python pandas dataframe

我在函数外部定义了indicator个数据帧。我试图将值附加到函数内的数据帧。但我得到了未解决的参考错误。

源代码:

   indicator = pd.DataFrame()

   def chart(x):
      df   # sample dataframe 
      indicator = indicator.append(df)

   for i in range(array_length):
       chart(x)

   print(indicator)
  

我收到语法错误:未解析的引用'指标'

任何人都可以帮助解决这个问题。感谢

1 个答案:

答案 0 :(得分:2)

您正在函数中执行赋值,因此将indicator视为局部变量并引发UnboundLocalError。尝试

  1. 声明indicator全球

  2. indicator传递给您的函数(推荐)

    def chart(df2):
      return df2.append(df)
    
    indicator = chart(indicator)
    
  3. 请注意,异常发生在indicator而非df,因为df上没有进行任务分配,因此解释程序会将其解析为全局而不会出现问题。