使用Stata的双向灵敏度图

时间:2015-09-11 20:42:11

标签: graph stata

我正在评估医疗保健决策模型,并希望显示双向敏感性分析的结果。我已经包含了用于创建两个感兴趣变量的范围及其线性预测变量(生命天数)的代码。

我希望将红色和蓝色区域遮盖,而不是点。我在rarea中尝试了areatwoway命令,但这并未达到预期的效果。下面编码的散点图是我可以实现的最终结果的最佳近似值。

*create all possible pairs of data
clear
set obs 40

gen a = 0.20 if [_n] == 1
    replace a = a[_n-1] - 0.02 if [_n] != 1

gen b = a

fillin a b

*predict estimates from equation
gen pred = a*-1067.54 + b*-89.1

*identify all estimates >= 90 days
gen _90 = pred >= 90

*plot predictions by status of exceeding 89 days
twoway scatter a b if _90 == 1 || scatter a b if _90 == 0

感谢您提前获得任何帮助。

1 个答案:

答案 0 :(得分:0)

对于您要执行的操作twoway contour应该正常工作

clear
set obs 40
gen a = 0.20 if [_n] == 1
replace a = a[_n-1] - 0.02 if [_n] != 1
gen b = a
fillin a b
gen pred = a*-1067.54 + b*-89.1
gen _90 = pred >= 90

twoway (contour _90 a b, levels(2) scolor(mint) ecolor(magenta) heatmap)

当然,您可以尝试使用contourhelp twoway_contour)和其他双向情节选项(help twoway_options)的附加选项。

例如:

twoway (contour _90 a b, scolor(mint) ecolor(magenta) levels(2) heatmap ///
    zlabel(.25 "0" .75 "1"))

添加zlabel()以重新定义图例上使用的值。其他选项可用于更改图例的位置等。另请注意,因为contour是双向情节类型,所以它也可以与其他双向情节相结合。