我在python中有一个函数,该函数返回五个数组。我想将这些数组转换为数据框result
。为了简洁起见,我将省略函数体,但这是我的代码的样子:
def runmodel():
## omitting code for brevity
return a, b, c, d, e
然后,当我运行run model
时,我得到了所有返回的变量a,b,c,d,e
的代码。
> run()
(array([[ 0. , 0. , 7.61377153, 0. , 0. ,
0. , 0. , 0. , 0. , 0. ,
2.20431486, 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 13.94209173, 0. ,
0.50471147, 18.42825281, 0. , 0. , 0. ,
0. , 0. , 2.03488863, 0. , 0. ,
0. , 0. , 1.44420213, 0. , 0. ,
0. , 24.76959413, 0. , 1.83168143, 0. ,
0. , 0. , 0. , 1.0522511 , 0. ,
0. , 1.87509854, 0. , 0. , 0. ,
11.36184872, 0. , 16.59942782, 0. , 0. ,
17.33892885, 0. , 0. , 0. , 0. ,
0. , 0. , 1.28199479, 31.76130032, 0. ,
0. , 0. , 0. , 0. , 0. ,
10.29176791, 12.05028586, 5.95222179, 0. , 0. ,
0. , 0. , 0. , 0. , 0. ,
2.82531264, 0. , 0. , 1.62874439, 0. ,
4.63870345, 0. , 0. , 6.47953447, 0. ,
0. , 0. , 0. , 17.67837878, 11.08462275,
0. , 26.08591628, 4.91841726, 0. , 12.21861283,
0. , 0. , 1.46213229, 0. , 0. ,
0. , 0. , 0. , 0. , 1.36157407,
11.74428328, 0. , 0. , 0. , 0. ,
10.21569859, 4.02472319, 8.60214736, 6.64881891, 28.73018726]]),
array([25.]),
array([1.]),
array([0.]),
array([0.]))
所以,我的问题有两个:
runmodel
的特定输出的技术术语是什么?它是数组列表还是数组元组..或其他东西?对于第二部分,我尝试在result = pd.dataframe({'a':a, 'b':b, 'c':c, 'd':d})
中添加行runmodel
,但随后出现错误; UnboundLocalError: local variable 'result' referenced before assignment
。
非常感谢您的帮助。如果这是一个可怕的问题,我感到很抱歉:我什至不知道从哪里开始。
答案 0 :(得分:0)
runmodel的特定输出是数组的元组。为了将它们作为数据帧返回,您可以执行以下操作:
PUBLIC_URL
为了避免出现“ UnboundLocalError:赋值之前引用了本地变量'result'”错误,请确保在实际将其分配给数据框之前不要使用结果变量。