Hester12138 2022-01-25 16:14 采纳率: 0%
浏览 100

lowess报错:ValueError: exog must be a vector,如何解决?

想在SHAP的dependence plot上加回归线,使用lowess, 报错:ValueError: exog must be a vector,如何解决?
相关代码:
import statsmodels.api as sm
import math
import numpy as np
import pylab as pl

idx = np.where(cols=="velocity_bin9")
x = X[:,idx]
y_sv = shap_values[:,idx]
lowess = sm.nonparametric.lowess(y_sv, x, frac=.3,it=3, delta=0.0)
_,ax = plt.subplots()
ax.plot(*list(zip(*lowess)), color="red", )

shap.dependence_plot('velocity_bin9', SHAP, Xdata[cols], interaction_index=None,ax=ax, show=False)
###### 运行结果及报错内容 :


ValueError                                Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_31660/1709026442.py in <module>
      7 x = X[:,idx]
      8 y_sv = shap_values[:,idx]
----> 9 lowess = sm.nonparametric.lowess(y_sv, x, frac=.3,it=3, delta=0.0)
     10 _,ax = plt.subplots()
     11 ax.plot(*list(zip(*lowess)), color="red", )

D:\anaconda3\lib\site-packages\statsmodels\nonparametric\smoothers_lowess.py in lowess(endog, exog, frac, it, delta, xvals, is_sorted, missing, return_sorted)
    145     # same length.
    146     if exog.ndim != 1:
--> 147         raise ValueError('exog must be a vector')
    148     if endog.ndim != 1:
    149         raise ValueError('endog must be a vector')

ValueError: exog must be a vector

我想要达到的结果:

img

请指教!!谢谢!!

  • 写回答

1条回答 默认 最新

  • youcans_ 人工智能领域优质创作者 2022-01-25 16:41
    关注

    (1)建议你查看一下 y_sv, x 的 type 和 shape,从程序代码无法判断 y_sv, x 的具体数据结构
    (2)另一个办法,先自己生成一个 y, x,跑一下程序,用于检查程序是否正确

    
    import numpy as np 
    import pylab as plt 
    import statsmodels.api as sm 
    
    x = np.linspace(0,2*np.pi,100) 
    y = np.sin(x) + np.random.random(100) * 0.2 
    lowess = sm.nonparametric.lowess(y, x, frac=0.1) 
    
    plt.plot(x, y, '+') 
    plt.plot(lowess[:, 0], lowess[:, 1]) 
    plt.show() 
    
    评论

报告相同问题?

问题事件

  • 创建了问题 1月25日

悬赏问题

  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?