- 36
- 235 175
Decision analytic modelling in health economics
United Kingdom
เข้าร่วมเมื่อ 8 ต.ค. 2020
I am a health economic modeller at the University of Exeter and I am posting videos to this channel for those interested in health economic modelling for cost-effectiveness analysis. I will be covering concepts and theory, practical examples and novel methodology.
Please feel free to use these videos for self-study. If you are using them for training/education please do not embed these videos but feel free to share links to the channel and its videos.
Please feel free to use these videos for self-study. If you are using them for training/education please do not embed these videos but feel free to share links to the channel and its videos.
Implementing a decision tree in R
I had a question on Twitter about implementing a decision tree in R. Here is a short video giving at least one approach to implementing a decision tree. We code the model so that it can work with a single set of parameters or multiple sets of parameters so our sensitivity analyses are easy to run.
See the final code at gist.github.com/tristansnowsill/53ff878eadedae659a579be2d01a31c6
See the final code at gist.github.com/tristansnowsill/53ff878eadedae659a579be2d01a31c6
มุมมอง: 1 611
วีดีโอ
Intervention effects: Hazard ratios
มุมมอง 2.9K3 ปีที่แล้ว
Hazard ratios are often used to describe the effect of an intervention when the outcome is a survival outcome (i.e., how long does someone survive before the event happens). In this video I delve a little into proportional hazards and how to test that proportional hazards is a reasonable assumption (a prerequisite for using a hazard ratio in your model) and then show how hazard ratios get used ...
Spotlight on: Multivariate normal distribution
มุมมอง 1.8K3 ปีที่แล้ว
The multivariate normal distribution (MVN) lets us model multiple normally distributed variables which are also correlated. We often use it in decision analytic models to incorporate uncertainty in regression results into our model. To sample from the multivariate normal distribution in Excel isn't that difficult but we need to have the Cholesky decomposition of the variance-covariance matrix s...
Spotlight on: Dirichlet distribution
มุมมอง 4.6K3 ปีที่แล้ว
We saw in th-cam.com/video/i8KvU-ODqgA/w-d-xo.html that the Beta distribution can be used to model the probability of an event happening (versus not happening). But what if there are more than two possible outcomes? Enter the Dirichlet distribution! The way you use it is pretty similar to the Beta distribution, but unfortunately there's no built in function in Excel to use so we construct our D...
Spotlight on: Chi-square distribution
มุมมอง 2463 ปีที่แล้ว
If you're like me you may remember being pretty confused whenever Chi-square came up at school. In this video I'll show you that the Chi-square distribution is actually pretty useful for modelling rates, although it often gets overlooked. And of course I show you how to implement it in Excel and in R.
Spotlight on: Gamma distribution
มุมมอง 1.9K3 ปีที่แล้ว
The Gamma distribution often gets used to model uncertainty around costs and other quantities which can't be negative. In this video I show you how to find the Gamma distribution you want if you know the mean and coefficient of variation, and also help you to use the right parameters in Excel and R because they use different parameterisations (by default) and Excel labels the parameters incorre...
Spotlight on: Lognormal distribution
มุมมอง 1.5K3 ปีที่แล้ว
NOTE! In the video at 2:10 the contingency table has B twice. The B on the second row should be a C. The lognormal (or log-normal) distribution gets used in virtually every decision analytic model. It can be used for modelling costs, rates, and also odds ratios and relative risks.
Spotlight on: Beta distribution
มุมมอง 2.2K3 ปีที่แล้ว
In this new series, I'm looking at the distributions you are likely to need to use in probabilistic sensitivity analyses. For each one I show you how to implement it in Excel and in R. First on the list is the Beta distribution, which is excellent for modelling probabilities.
Markov cohort simulation in Excel - Probabilistic sensitivity analysis (Part 2)
มุมมอง 8K3 ปีที่แล้ว
In this video I show you how to write a macro in VBA (Visual Basic for Applications) so that Excel can run your probabilistic sensitivity analysis (PSA). I share tips for how to get it running as fast as possible. Note - After recording the video I noticed a small error. On the parameters sheet, for cell F11 we should have '=BETA.INV(RAND(),60,40)' not '=BETA.INV(RAND(),90,10)'. Apologies for t...
Markov cohort simulation in Excel - Probabilistic sensitivity analysis (Part 1)
มุมมอง 14K3 ปีที่แล้ว
In this video I show you how to prepare your Excel Markov model to run probabilistic sensitivity analysis (PSA). You will learn about giving cells in Excel names and see examples of sampling from the beta and gamma distributions. Note - After recording the video I noticed a small error. On the parameters sheet, for cell F11 we should have '=BETA.INV(RAND(),60,40)' not '=BETA.INV(RAND(),90,10)'....
Markov cohort simulation in R - Our first probabilistic sensitivity analysis
มุมมอง 4.6K3 ปีที่แล้ว
We previously (th-cam.com/video/wdTH56s3vZs/w-d-xo.html) wrapped our model in a function so that we would be able to do sensitivity analyses. Now we see how that gets done in practice with a probabilistic sensitivity analysis (PSA). Code for this lesson is available at gist.github.com/tristansnowsill/0b7fd94d4a2cb4a79eeb58c7891c0bf5 The R logo is © 2016 The R Foundation. The R logo is used unde...
Markov cohort simulation in R - Wrapping your model in a function
มุมมอง 1.8K3 ปีที่แล้ว
If we want to take our modelling in R to the next level and prepare for things like sensitivity analyses, we need to turn our model into a reusable piece of code, i.e., a function. In this video I show a painless way of moving parameters from variables into a list and then turning your model code into a function which retrieves parameter values from that list. See the code at gist.github.com/tr...
Markov cohort simulation in R - Tunnel states
มุมมอง 1.5K3 ปีที่แล้ว
In this video we learn how to incorporate tunnel states into our model so that the probability of dying from the diseased state depends on how many cycles we have spent in the state already. See the code at gist.github.com/tristansnowsill/cbbb053b04c73fc67cfd318e8ff57444 The R logo is © 2016 The R Foundation. The R logo is used under the terms of the Creative Commons Attribution-ShareAlike 4.0 ...
Markov cohort simulation in Excel - Tunnel states
มุมมอง 3.7K3 ปีที่แล้ว
In this video I show how to add tunnel states to our model in Excel. This allows the probability of dying from the diseased state to vary depending on how long we have been in the diseased state.
Markov cohort simulation in R - Time-varying payoffs
มุมมอง 1.9K3 ปีที่แล้ว
It's not just transition probabilities which can vary over time. In this video we look at including time-varying payoffs in our Markov cohort simulation in R. See the code at gist.github.com/tristansnowsill/a15c2a27f7d2a8a92747a628013c0a45 The R logo is © 2016 The R Foundation. The R logo is used under the terms of the Creative Commons Attribution-ShareAlike 4.0 International license (CC-BY-SA ...
Markov cohort simulation in R - Time-varying transition probabilities
มุมมอง 7K3 ปีที่แล้ว
Markov cohort simulation in R - Time-varying transition probabilities
Markov cohort simulation in Excel - Half-cycle adjustment
มุมมอง 2.7K3 ปีที่แล้ว
Markov cohort simulation in Excel - Half-cycle adjustment
Markov cohort simulation in Excel - Discounting
มุมมอง 3.6K3 ปีที่แล้ว
Markov cohort simulation in Excel - Discounting
Probabilistic sensitivity analysis (PSA) - Part II (Analysing and presenting results)
มุมมอง 5K3 ปีที่แล้ว
Probabilistic sensitivity analysis (PSA) - Part II (Analysing and presenting results)
Probabilistic sensitivity analysis (PSA) - Part I (Introduction)
มุมมอง 9K3 ปีที่แล้ว
Probabilistic sensitivity analysis (PSA) - Part I (Introduction)
Sensitivity analyses in cost-effectiveness modelling
มุมมอง 12K3 ปีที่แล้ว
Sensitivity analyses in cost-effectiveness modelling
Markov cohort simulation in R - Illness-Death model
มุมมอง 8K3 ปีที่แล้ว
Markov cohort simulation in R - Illness-Death model
Markov cohort simulation in R - Rock-Paper-Scissors
มุมมอง 6K3 ปีที่แล้ว
Markov cohort simulation in R - Rock-Paper-Scissors
Discounting (Time in Markov cohort simulation)
มุมมอง 1.7K3 ปีที่แล้ว
Discounting (Time in Markov cohort simulation)
Half-cycle corrections (Time in Markov cohort simulations)
มุมมอง 3.3K3 ปีที่แล้ว
Half-cycle corrections (Time in Markov cohort simulations)
Choosing the right cycle length (Time in Markov cohort simulation)
มุมมอง 2.4K3 ปีที่แล้ว
Choosing the right cycle length (Time in Markov cohort simulation)
Learn about tunnel states (Time in Markov cohort simulation)
มุมมอง 3.4K3 ปีที่แล้ว
Learn about tunnel states (Time in Markov cohort simulation)
Markov cohort simulation in Excel - Time-varying transition probabilities and payoffs
มุมมอง 10K4 ปีที่แล้ว
Markov cohort simulation in Excel - Time-varying transition probabilities and payoffs
wow thank you !
Hi Tristan, great explanation and videos. Thank you so much. Can you please also do an advanced version of this including new drug Vs standard, and including different perspectives of costs. Thank you.
Thank you for this video. Can you do this for decision tree models?
you're brilliant. Thank you so much!
This was incredibly helpful. I cannot thank you enough!!!
Just going through all your Markov model videos, loving them!
Hello, i am enjoying the content! I am an undergraduate and may potentially take a Health Economics master's in the upcoming years. Would you be expected to learn R when doing the master's or can you choose between R and Excel? Best wishes, Jos
You will need to learn both, R is crucial in HE. Good luck
Hi Tristan, thank you for sharing knowledge and these great lectures. Can you please also create and share similar tutorials about partitioned survival models - focusing on extrapolating the survival curves, calculating state membership and patient simulation, in Excel and R.
Dear Tristan, Thank you for your clear videos, they truly are helpful. I face an issue: when I turn my PSA to 1 (using BETA distribution), some values of my transition matrix take negative values (always the one with the "1-SUM(...)"). I have 29 health states and thus multiple transition probabilities, some TPS are very close to 0 so I thought that was the reason but I increased the alpha and beta but the problem remained. Do you have an idea of what the problem is? Thank you. Kind regards, Yasmine
Thank you so much! It is very helpful! But I'd like to ask if we need to consider discount rate in this process? Thanks a lot!
Any new videos with the new bacon version in R? I am not sure which ages to use from the results txt file bacon produces as a result Any help would greatly be apprecited!
Thank you so much!, My professor used to do the half-cycle adjustment only in the first and the last cycle, is that also correct?
3:17 You can do all the exponential distribution probability computations "automatically" simply by taking the matrix exponential of a matrix of state-to-state hazard rates (with the leading diagonal set to the negative sum of rates each row). Example at en.m.wikipedia.org/wiki/Continuous-time_Markov_chain
Perfect. Thanks for this.
Great! Question: I want to do a very similar simulation, but in this case the transition probabilities change with time. For instance, a group of 50-year old men might transition to disease or dead in the first cycle. But in the second cycle they are 1 year older, so their chances of either transition increases, as does the probability of transitioning from diseased to dead (since the group of diseased people is also 1 year older). What do you think would be the best way to accomodate that?
is there a video on how to estimate the parameters from a population matrix of compositions
Such a pity you did not show us how to make the function from a model that has time-varying parameters. I used the code m_P["state1","state2", 1:10] <- p_state1_state2 just for the first 10 cycles, but R showed me an error saying that I used incorrect number of subscripts 😏 I don't know what to do
Hi, how do we determine the Alpha and Beta parameters?
Hi, Thank you for your video! it really very helpful. I have a question how do we determine the Alpha and Beta parameters?
You are a legend. Your video tutorials are very helpful. I'm trying to model early cancer and I'd need to calculate transition probabilities for three competing events occurring during even-free state. I was wondering how do I get the risk rate (λ) for the equation you mentioned in this video, if I only have cumulative incidence (in %) for each of the 3 competing events over time? Many thanks.
Sir how I can calculate life years? Please help me
Would it be possible for you to make a video for simple deterministic sensitivity analyses (one-way with a tornado diagram)? Great video!
Awesome, but the font colors are terrible for us
Hi! thank you for your videos. I'm begginer so what is qx mening? And could you rise your videos voice pls?
It's really helpful, thank you! Could you please explain why you set shape = 100 and 25? Are there any criteria for using these values? Sorry I could not catch up with this.
This is a great video, but what shortcut did you use to increase the size of the vertical bar to write over 3 lines at 10.53? Looks super useful!
😀 It's a feature in RStudio. On Windows it is Ctrl + Alt + Down arrow (or Up arrow as appropriate). You can also hold Ctrl + Alt and left mouse click in arbitrary locations. There are details at docs.posit.co/ide/user/ide/guide/productivity/text-editor.html#multiple-cursors (found by searching "RStudio multiple cursors" in case TH-cam won't let me post the URL)
Amazing! Thank you so much. I have been going through your entire series and am finding it incredibly useful. Thank you for making these!@@TMSnowsill
Hello, can you explain how to know how many cycles to run. Shouldn't we keep running cycles until all patents are in dead state.?
It depends on the time horizon for your economic evaluation. If it is lifetime, then you should keep running cycles until all patients are in the dead state, or essentially until adding more cycles makes no difference to the cost-effectiveness results.
Hi, Can you also provide make a video for vba codes for CEAC and Scatter plot.
Thanks for the suggestion, I have added to my list of future topics. Sorry that I haven't had time to record videos recently.
Really a nice video! Your applications are clear and insightful. I just wonder how to conceptualize the initial amount of events (1000) in the first cycle. It is clear in the example of health economics. It is plausible that in the first observation, all statistical units are healthy. Less clear to me for the R-P-S example. Any further explanation is welcome
Thanks. The important thing for cost-effectiveness analysis is that the cohort size doesn't actually matter, because it scales both the numerator and the denominator of the incremental cost-effectiveness ratio. For budget impact analysis it is important and should be a relevant number for the policymaker, e.g., the number of new patients each year. In the R-P-S example it doesn't really mean anything - if we set the cohort size to 1 then we could interpret them as probabilities in each round.
Hi doc I’m interested to talk to you please how can I contact you.. thanks
I believe you found my contact details 😊
The r programme doesnt allow me to do the matrix mulitplication %*% I dont know why
I fixed it! Thanks!
Glad you found what was causing the issue 😊
Will we always have time-varying pay offs if we have time-varying transitions? ie are they always related with same values or not necessarily
You can have time-varying payoffs and/or time-varying transitions. Just because you have one doesn't mean you need the other. The key thing is to ask "Is it reasonable to assume this thing (payoff, transition probability) is constant regardless of time since the model start (e.g., age) and time since entering this health state?" and if the answer is no then you need to make it time-varying.
Thank you
You are very welcome 😊
Related with the INMB, I've tried to calculate both option C and D in comparison with option A. Both of them (NMB C- NMB A) and (NMB D-NMBA) resulting the same amount, $25.000 with the 100.000 threshold. Which one should I choose between those two if we're using the NMB approach?
If the net monetary benefits of C and D are identical and both greater than the net monetary benefit of A, then C and D are both optimal from the perspective of maximising QALYs with a fixed budget. It could be worthwhile exploring which has greater NMB if the willingness-to-pay is lower or higher than $100,000/QALY. There may be other differences that are important, such as equity impacts (maybe C increases health inequalities while D reduces them).
Can you also create videos on partition survival model from scratch
Hi! I know there is a lot of interest in partitioned survival analysis, but it is a technique which is often implemented uncritically. If I do any videos on partitioned survival analysis I would want to at least show how they should be done well. Please check out an excellent report on PartSA www.sheffield.ac.uk/nice-dsu/tsds/partitioned-survival-analysis
Is this basically a Monte Carlo simulation? Or is this different? You could get the mean and 5th and 95th percentile from the results at the end as the CI95?
Yes, it is an example of Monte Carlo simulation. You can use the percentiles to produce credible intervals for the different outcomes. If you want to produce a credible interval for the incremental cost-effectiveness ratio (I don't necessarily suggest you do) the commonly accepted method is to read off the cost-effectiveness acceptability curve at 2.5% and 97.5%, but it is best to interpret carefully.
Is the left facing arrow the same as the assignment command (<-)
Yes, exactly! I use a font with programming ligatures (Fira Code) in RStudio, but all I am typing is <-
Can you please make a video on export and import of Agricultural products. Both the TPM and MCA
Can you please make a video of Markov Chain on export data of commodities
Hi i am watching this video after 2 years. Is it possible to do for life insurance product pricing? Also may I ask are you an academic or professional (if so what)? Thank you!
If I use beta=alpha=1, will that be correct?
Actually beta=alpha=1 is a special case of the Beta distribution which is the uniform(0, 1) distribution. The cumulative distribution function for this and its inverse are just the identity function (F(x) = x) so =BETA.INV(RAND(),1,1) is identical to =RAND(). beta=alpha=1 suggests that you have no information at all about what the transition probability could be, which is hopefully not the case!
Hi there! I'm having troubles understanding the applicability of these survival functions for Markov modeling. For example, if I'm analyzing the cost-effectiveness of ACALABRUTINIB vs. IBRUTINIB as a second-line treatment, most oncology Markov models would have three states ("Progression-free," "PD," "Death"). Using these survival functions, how can I obtain the time-varying transition probabilities for these three states?
Yes, lots of oncology models are not in fact Markov models but instead use a technique called Partitioned Survival Analysis (PartSA). There is a good report on this technique at www.sheffield.ac.uk/nice-dsu/tsds/partitioned-survival-analysis - it is not necessarily a good technique to use but it has the benefit of being easy to implement. If you have patient-level data, e.g., times and censoring indicators for disease progression and death, then for Markov modelling you would: (1) Fit a parametric model for the time between progression and death, which would give you the transition probability for PD -> Death; (2) Fit a parametric model for the time between initiation of 2nd line treatment and death, censored for progression (so this is just people dying without disease progression) and this gives you the transition probability for Progression-free -> Death; (3) Fit a parametric model for the time between initiation of 2nd line treatment and progression, censored for death, which gives you the transition probability for Progression-free -> PD. If you don't have patient-level data (e.g., you only have Kaplan-Meier curves or somebody has provided you with progression-free survival [PFS] and overall survival [OS] parametric models) then I would probably use PFS to determine the probability of remaining in Progression-free, then have two (or more) parameters to be estimated through calibration, which are the proportion of transitions out of Progression-free which are to Death, plus a parametric model for post-progression survival (the transition probability from PD -> Death).
Where did you get the data for the matrix? Was this mentioned in a previous video? I can’t seem to find it?
Hi Sir I'm analyzing lung cancer screening by LDCT. This screening method has sensitivity and specificity. How do I put these two parameters into the Markov model for analysis? Please help me, many thanks.
Hi! If you want to do a Markov model for a test, then you need to have different health states for the *true* disease state of the patient. E.g., you could have the health states (1) No lung cancer; (2) Undiagnosed early stage lung cancer; (3) Undiagnosed late stage lung cancer; (4) Diagnosed early stage lung cancer; (5) Diagnosed late stage lung cancer; (6) Death. Sensitivity would come into the model as the proportion of the cohort which moves instantaneously from (2) to (4) and from (3) to (5) when the screen occurs. 1 - Specificity is the proportion of people in (1) who incur the consequences (costs and maybe reduced quality of life) of subsequent testing due to a false positive result. It is quite common in the case of a one-off test to use a decision tree at the "start" of a model to handle applying the sensitivity and specificity, and then have four Markov models for what happens next, depending on whether the test gives a true/false positive/negative result. See my paper on modelling diagnostic tests at rdcu.be/dxpJQ
Thank you very much for your videos. These videos are very helpful. It would be a great if you have a video of deterministic sensitivity analysis in Rstudio.
Thank you! I have that on my list of things to cover when I get around to doing more videos. You may find this thread I put together useful: twitter.com/TMSnowsill/status/1696845427646341285
You lost me at 3:53!!
Thank you! I have found this a really good starting point for a budget impact analysis model. If you have any guidance about choices for distributions (even references to read) that would be really appreciated!
Tanx for your explanation🌹 . I have a question ,When we have an entervention such as screening every 5 years for example ,how we should inter it into the model?
is the rock paper scissors equal to the three states?
Omg you're a lifesaver!