Introduction
This app takes YP-CORE data in rows each with one or two scores. These will typically be one row per usually baseline and last session. (An app that will take many rows of scores per client should follow soon. The data can be uploaded in CSV (Comma Separated Variables) format, R's Rda format, Excel .xlsx or Libre/OpenOffice .ods formats. The column names must be RespondentID, TherapistID, Gender, Age, YPmean1, YPmean2, YPclin1, YPclin2, Comment, Start_date, End_date, nSessionsAttended, nSessionsDNAed, nSessionsCancelled, nSessionsLate and nWeeks but you can have your own variables to right of those required variables. You don't have to fill in all the variables nor, of course, do data have to be complete. Naturally, the more data you have the more useful and informative the analyses will be.
It is safest and easiest to start with one of thes example files containing artificial data:
Download one to your own machine to explore this app with those data. Then delete the data rename the file and start putting your own data into it to use here.
First upload your data in one of those formats, the analyses then appear in the tabs after this one.
This is work in progress!!
This is work in progress like everything else in this app. Each tab has a todo list for what's to come for that tab and the explanation tab has a general todo list.
Upload data
Explanation
This tables shows the data you uploaded plus the coding of that data.
- At the right of the table the coding gives you the CSC categories of the YP-CORE scores (if there were any.)
- YPscore1toCSC is the difference between the first YP-SCORE and the CSC for that age and gender.
- YPscore2toCSC is the same for the second YP-SCORE. These will get used in some plots later, see todo list!
- The search box is a very simple inclusive search so if you put '62' in there the table will reduce to showing you any rows of data that contain '62' anywhere including say a participant ID of 62 or a score of 1.62.
- The filter boxes at the top of each column allow you to search in that variable. They will often show you a a drop down list of the values that exist in the data.
- For the dates the search is of the stem you input so if you input '2024-04' it should show you all dates in April 2024.
- The filtering is a Boolean AND which is to say that you will get to see the rows that fulfil all the constraints you input.
This is work in progress!!
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Add buttons to download entire table as a file
- And buttons to download selected rows from the interactive datatable
- Probably have to add RCI at some point!
Searchable table of the data
Explanation
This is pretty indigestible but it gives all the summary statistics for all the variables across all clinicians. I think the naming of the statistics is pretty self-explanatory if not particularly easy on the eye.
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Break this up into a series of tables with headings above each
- Rather laboriously (!) add percentages where they make sense
- Use flextable() to make it more digestible.
- Add button to download entire data behind the table as a file?
- Probably have to add RCI at some point!
The summary stats
Explanation
As with the 'Summary statistics' tab this is pretty indigestible and gives all the same summary statistics for all the variables across all clinicians. I think the naming of the statistics is pretty self-explanatory if not particularly easy on the eye.
Todo list
This is work in progress. Until such time as this is no longer true (when?!), this is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Add button to download entire table as a file.
- Think how it could be made more digestible.
- Perhaps add percentages but they will only make sense for some of the statistics
- Probably have to add RCI at some point!
- Will it be useful to people to have more comparative analyses comparing clinicians?
Summary stats by clinician
Explanation
This tab gives a histogram of the numbers of sessions attended
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Put statistics into the plot, top right
- Add options to break down by clinician and perhaps by age, gender ...?
- Add options to count or add n(DNA), n(Cancelled) and n(Late)?
- Will it be useful to people to have more comparative analyses comparing clinicians?
The histogram
Here is the histogram of the numbers of sessions attended
Explanation
This tab gives a cat's cradle plot of the data
A cat's cradle plot ignores any respondent with only one usable score and shows the change in scores as a line. You can identify the points by hovering over them when you will see a 'tooltip' giving you the YP-CORE score, the respondent ID, therapist ID and the category of the CSC change.
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Add options to break down by therapist, age, gender ...
- Buttons to download the plot
The cat's cradle plot
This is a so-called 'cat's cradle' plot. It shows all the complete pairs of scores coloured by gender with connecting lines. The dashed horizontal reference line marks the mean baseline score and the black points, offset somewhat from the individual points, mark the mean baseline and later scores. The vertical lines through those are the bootstrap 95% confidence intervals.
Explanation
This tab gives a cat's cradle plot against dates (if given)
This is very similar to the previous plot but the x axis is by date, not occasion. This gives a better picture of the work over time and Again, you can identify the points by hovering over them when you will see a 'tooltip' giving you the YP-CORE score, the respondent ID, therapist ID and the category of the CSC change.
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Add options to break down by therapist, age, gender ...
- Buttons to download the plot
The plot
This shows all the complete pairs of scores coloured by therapist ID with connecting lines plotted against episode start and finish dates (if given). If you hover over a point you should be shown the respondent ID, gender and CSC change category.
Explanation
This tab gives a simple breakdown of the CSC categories: baseline, final and change counts
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Probably have to add RCI at some point!
- Add options to break down by age, gender ...?
- Will it be useful to people to have more comparative analyses comparing clinicians?
The CSC tabulations
I can see that this might be a bit overwhelming at first sight. Play around with it and it will get familiar and you will learn which of these values are really of interest to you. The confidence intervals (CI) may be unfamiliar so you can ignore them at least first but they are useful as they indicate how we should see these observed rates as predictors of the likely long term values for your services. The larger the number of clients with data the better your observed values become as predictores of future values. For the background on CIs see this entry in my OMbook glossary and this page on my PSYCTC.org site
CSC analyses
Here is the breakdown of the initial CSC categories
And now the breakdown of the 2nd/final CSC categories
This is the crosstabulation of the first and 2nd/final categories (where you have both scores)
And this is the breakdown of the CSC classification changes (basically the crosstabulation above unwrapped).
RCI analyses
Now the breakdown of the RCI change categories
And finally: the full RCSC analyses
Crosstabulation of CSC and RCI change categories
Essentially the same unfolded with CIs
It is, of course, impossible to achieve clinically significant improvement if you start below the CSC for this reason people sometimes report the CSC restricting to the participants who start above the CSC. Here is RCS crosstabulation for that, censored, dataset.
The same unfolded with CIs
Explanation
This tab gives a scaled Jacobon plot
The Jacobson plot plots the 2nd/final score against the first. Points lying on the leading diagonal mark clients whose last YP-CORE score is exactly the same as their fist score. Points below the leading diagonal have lower last scores than their first scores, points above the leading diagonal, <i>vice versa</i>.
The 'tramlines' either side of the leading diagonal mark the RCI for the YP-CORE for that person's age and gender. As the scores have been rescaled here everyone, regardless of age or gender, has tramlines on 1 above or 1 below the leading diagonal. Points inside the tramlines mark people whose scores changed but less than the RCI (or RCC: Reliable Change Criterion), i.e. 'no reliable change'. Points below the lower tramline come from people whose YP-CORE scores improved more than the RCI and those above the upper tramline deteriorated more than the RCI.
The black vertical and horizontal lines mark the CSC. Points to the left of the vertical line started below the CSC, those to the right started above it. Similarly, points above the horizontal line finished above the CSC and those below it finished below the CSC
As in previous plots you can identify the points by hovering over them when you will see a 'tooltip' giving you the person's gender, age, first and last YP-CORE scores (not rescaled), the respondent ID and therapist ID.
Todo list
This is work in progress like everything else in this app. This is the todo list for this tab as I see it at this point
- Add options to colour the points by therapist, age, gender ...
- And perhaps facetting by those variables or to change the plot by those variables.
- Add buttons to download the plot.
The plot
Explanation
This app is definitely work in progress at the moment.
Overall todo list
This is the todo list for this tab as I see it at this point
- Better cross-referencing to supporting documents
- Ideally some recorded 'talk-you-through' pocasts?
App created 22.v.25 by Chris Evans at this point specifically for Oiatillo Temirov for checking his data. PSYCTC.org
Last updated 9.vi.25: Improvements to RCSC tables, added Jacobson plot.
Licenced under a Creative Commons, Attribution Licence-ShareAlike Please respect that and put an acknowledgement and link back to here if re-using anything from here.
Background and related resources
This shiny app is one of a growing number in, my shiny serverThey complement:
- my Rblog of posts about using R
- the glossary linked with
- the OMbook
- the CECPfuns R package
- and it's all part of the resources of PSYCTC.org
- and linked with the CORE system web site
There is a form if you want to contact me: so do please use that if you think there is anything wrong here or anything that could be improved.
There is also now an Email announcement list, never updating more than monthly, where I will put up developments of new apps here, a summary of updates to the glossary and new posts in the Rblog. You can sign up for that here.