我有一个执行几个命令并在最后创建一个数据框的函数:
def Pos_Presentation():
df = pd.DataFrame(columns=['ID', 'Date', 'Time', 'Session','Condition','Stimulus','Response_Type','Reaction_Time'])
return df
我希望在函数外部创建并访问数据框(df)。但是当我尝试时:
Pos_Presentation()
df
我收到一个错误:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-4-00cf07b74dcd> in <module>
----> 1 df
NameError: name 'df' is not defined
我尝试过:
def Pos_Presentation():
global df
df = pd.DataFrame(columns=['ID', 'Date', 'Time', 'Session','Condition','Stimulus','Response_Type','Reaction_Time'])
return df
Pos_Presentation()
df
在Jupyter_Notebook中,这有效。但是在Psychopy中,这是我需要运行的地方,它给我一个错误:
NameError: name 'df' is not defined
我无法将此函数分配给变量(例如var = Pos_Presentation(),因为它除了生成数据帧以外还执行其他许多工作。
我认为您只需要将PosPresentation()的输出分配给df,就像这样:
def Pos_Presentation():
global df
df = pd.DataFrame(columns=['ID', 'Date', 'Time', 'Session','Condition','Stimulus','Response_Type','Reaction_Time'])
return df
df = Pos_Presentation()
“但是功能“ Pos_df”之外的那个)。