ハザード関数の極大点を検出する方法を見つけようとしています(ライフラインライブラリを使用してプロットされています)。
ライフライン ライブラリは、ハザード関数 ( plot.hazard() ) を視覚的にプロットする機能を提供しますが、前述のように、関数自体ではなく関数の視覚的表現にすぎません。これは、明らかに、この関数を引数としてメソッドに渡すことができないことを意味します (つまり、scipy.signals ライブラリの find_peaks)。
誰かがそれらを検出する解決策を持っているかどうか疑問に思っています.ハザード関数をどのように計算したかを以下で見つけてください(ローカル最大値を強調表示した右端のプロット):
fig, (ax1, ax2, ax3) = plt.subplots(1, 3,figsize=(18,8))
km.fit(duration, event_observed = event)
kap = km.plot_survival_function(ax=ax1,legend="")
kap.set_title("Kaplan-Meier",fontsize=15)
na.fit(duration, event_observed = event)
na1 = na.plot_cumulative_hazard(ax=ax2,legend="",color="green")
na1.set_title("Cumulative Hazard",fontsize=15)
bandwidth = 5
na2 = na.plot_hazard(ax=ax3,xlim=(0,200),ylim=(0,0.03),bandwidth=bandwidth,color="orange",legend="")
na2.set_title("Hazard Function",fontsize=15)
ax3.set_xlabel('timeline',fontsize = 10)
plt.grid(linestyle="-.", color='grey')
私を助けてくれる人に感謝します。
ステファノ