值错误:没有为对象类型命名为1的轴<class'pandas.core.series.series'>

2024-04-29 06:47:47 发布

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

我是编程新手。我正在尝试使用scipy minimize,遇到了一些问题,并且解决了大部分问题。

现在这是代码,但我不明白为什么会出现这个错误。

par_opt = so.minimize(fun=fun_obj, x0=par_ini, method='Nelder-Mead', args=[series_pt_cal, dt, series_caudal_cal])

Tags: 代码objso编程错误scipyinical
1条回答
网友
1楼 · 发布于 2024-04-29 06:47:47

OP没有提供足够的信息,但基本上在代码中的某个地方,它被指定在Pandas系列的对象上通过数据帧列(axis=1)进行操作。如果代码正常工作,但偶尔出现错误,请检查数据帧可能只有一行的退化情况。Pandas有一个坏习惯,就是猜测您想要什么——它可能决定将一行数据帧缩减为一个序列(例如,apply()函数;您可以在其中使用reduce=False来禁用它)。

添加一行代码来检查对象是否为isinstance(df, pd.DataFrame),或者将有问题的pandas系列转换为数据帧,例如s.to_frame().T以解决我必须处理的问题。

相关问题 更多 >