transfer from old repo
BIN
.DS_Store
vendored
Normal file
BIN
1 PA Decline/.DS_Store
vendored
Normal file
252
1 PA Decline/00master.R
Normal file
|
|
@ -0,0 +1,252 @@
|
|||
##
|
||||
## Master script
|
||||
##
|
||||
## Based on the assignment work from the ISL-course
|
||||
##
|
||||
## Generation 2 - 02.december.2022
|
||||
## Code preparation for analysis on Denmarks Statistics server with enriched data set.
|
||||
##
|
||||
## Analysis plan:
|
||||
## Table 1
|
||||
## Figure 1: Sankey plot (drop & hop colored)
|
||||
## Table 2: Linear regression model of pase_6~.
|
||||
## Table 3: Elastic net prediction models of drop and hop. Performance measures referenced in text.
|
||||
##
|
||||
## A Rmarkdown file could be created to write the initial report with main results.
|
||||
## This code is a bit of a mess, as it is the result of several iterations. It works however.
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
# Step 0: Primary outcome
|
||||
## ====================================================================
|
||||
|
||||
# Script to run as hop and drop
|
||||
|
||||
pout <- "drop" # Drop to first quartile
|
||||
|
||||
# decl_rel
|
||||
# decl_abs
|
||||
# drop
|
||||
# hop
|
||||
|
||||
## ====================================================================
|
||||
## Data
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
source(here::here("1 PA Decline/data_set.R"))
|
||||
# Loading data-set from USB, to not store on computer
|
||||
|
||||
source(here::here("1 PA Decline/data_format.R"))
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Baseline - by PASE group
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
ts_q <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(pase_0_cut = factor(quantile_cut(pase_0, groups = 4)[[1]],ordered = TRUE)) |>
|
||||
select(-pase_6,-pase_0) |>
|
||||
tbl_summary(missing = "no",
|
||||
by="pase_0_cut",
|
||||
value = list(where(is.factor) ~ "2"),
|
||||
type = list(mrs_0 ~ "categorical",
|
||||
all_continuous() ~ "continuous2"),
|
||||
statistic = list(all_continuous() ~ c("{N_nonmiss}",
|
||||
"{median} ({p25}, {p75})",
|
||||
"{min}, {max}",
|
||||
"{mean} ({sd})"))
|
||||
) |>
|
||||
add_overall() |>
|
||||
add_n ()
|
||||
|
||||
ts_q
|
||||
|
||||
tbl_one_rtf <- file("table1.RTF", "w")
|
||||
writeLines(ts_q%>%as_gt()%>%as_rtf(), tbl_one_rtf)
|
||||
close(tbl_one_rtf)
|
||||
|
||||
## ====================================================================
|
||||
# Drops and hops
|
||||
## ====================================================================
|
||||
|
||||
# TRUEs are patients dropping
|
||||
table(X_tbl$pase_0_cut!="1"&X_tbl$pase_6_cut=="1")/nrow(X_tbl[X_tbl$pase_0_cut!="1",])
|
||||
|
||||
# TRUEs are percentage of patients inactive before stroke being more active after
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_0_cut=="1",])
|
||||
|
||||
# TRUEs are percentage of patients being more active after that were inactive before stroke
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_6_cut!="1",])
|
||||
|
||||
# Difference between hop/no-hop
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
# Stationary low
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
## ====================================================================
|
||||
# Sankey plot
|
||||
## ====================================================================
|
||||
|
||||
# source("sankey.R")
|
||||
# p_delta
|
||||
|
||||
## ====================================================================
|
||||
# Six months PASE: Bivariate and multivariate analyses
|
||||
## ====================================================================
|
||||
|
||||
dta_lmreg <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2)))
|
||||
|
||||
Hmisc::label(dta_lmreg$mrs_0) <- "Pre-stroke mRS >0"
|
||||
|
||||
uv_reg <- tbl_uvregression(data=dta_lmreg,
|
||||
method=lm,
|
||||
y="pase_6",
|
||||
show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)
|
||||
|
||||
mu_reg <- dta_lmreg |>
|
||||
lm(formula=pase_6~.,data=_) |>
|
||||
tbl_regression(show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)|>
|
||||
add_n()
|
||||
|
||||
tbl_merge(list(uv_reg,mu_reg))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Data variance
|
||||
##
|
||||
## Illustrating principal components.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# source("PCA.R")
|
||||
#
|
||||
#
|
||||
# pca22
|
||||
# ggsave("pc_plot.png",width = 18, height = 12, dpi = 300, limitsize = TRUE, units = "cm")
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Models
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# source("assign_full.R")
|
||||
|
||||
ls <- list()
|
||||
for (i in c("drop","hop")){
|
||||
pout <- i
|
||||
source("data_format.R")
|
||||
source("regularisation_steps.R")
|
||||
}
|
||||
|
||||
# Loop to run regularised model on both drop and hop.
|
||||
# Saved in list for printing and exporting the plot.
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data merge
|
||||
## ====================================================================
|
||||
tbl<-merge(ls$drop$RegularisedCoefs$'_data',ls$hop$RegularisedCoefs$'_data',by="name",all.x=T, sort=F)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
com_coef_tbl<-tbl%>%
|
||||
gt()%>%
|
||||
fmt_number(
|
||||
columns=colnames(tbl)[sapply(tbl,is.numeric)], ## Selecting all numeric
|
||||
rows = everything(),
|
||||
decimals = 3)%>%
|
||||
tab_spanner(
|
||||
label = "DROP",
|
||||
columns = 2:5
|
||||
)%>%
|
||||
tab_spanner(
|
||||
label = "HOP",
|
||||
columns = 6:9
|
||||
)%>%
|
||||
tab_header(
|
||||
title = "Model coefficients",
|
||||
subtitle = "Combined table of both full and regularised model coefficients"
|
||||
)
|
||||
|
||||
|
||||
# paste0("Regularised model, (a=",
|
||||
# best_alph,
|
||||
# ", l=",
|
||||
# round(best_lamb,3),
|
||||
# ")")
|
||||
|
||||
com_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
com_coef_rtf <- file("table2.RTF", "w")
|
||||
writeLines(com_coef_tbl%>%as_rtf(), com_coef_rtf)
|
||||
close(com_coef_rtf)
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Model performance
|
||||
##
|
||||
## Table with performance meassures for the two different models.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data set
|
||||
## ====================================================================
|
||||
|
||||
tbl<-data.frame(Meassure=c(names(ls$drop$ConfusionMatrx$byClass),"Mean AUC"),
|
||||
"Drop"=round(c(ls$drop$ConfusionMatrx$byClass,ls$drop$AUROC["Mean"]),3),
|
||||
"Hop"=round(c(ls$hop$ConfusionMatrx$byClass,ls$hop$AUROC["Mean"]),3))
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
tbl_perf<-tbl%>%
|
||||
gt()%>%
|
||||
tab_header(
|
||||
title = "Performance meassures",
|
||||
subtitle = "Combined table of both drop and hop"
|
||||
)
|
||||
|
||||
tbl_perf
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
tbl_perf_rtf <- file("table3.RTF", "w")
|
||||
writeLines(tbl_perf%>%as_rtf(), tbl_perf_rtf)
|
||||
close(tbl_perf_rtf)
|
||||
|
||||
|
||||
|
||||
42
1 PA Decline/ESOC2023.qmd
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
---
|
||||
title: "ESOC2023"
|
||||
format: html
|
||||
editor: visual
|
||||
---
|
||||
|
||||
```{r}
|
||||
library(plotly)
|
||||
|
||||
df
|
||||
|
||||
fig <- plot_ly(
|
||||
type = "sankey",
|
||||
orientation = "h",
|
||||
|
||||
node = list(
|
||||
label = c("A1", "A2", "B1", "B2", "C1", "C2"),
|
||||
color = c("blue", "blue", "blue", "blue", "blue", "blue"),
|
||||
pad = 15,
|
||||
thickness = 20,
|
||||
line = list(
|
||||
color = "black",
|
||||
width = 0.5
|
||||
)
|
||||
),
|
||||
|
||||
link = list(
|
||||
source = c(0,1,0,2,3,3),
|
||||
target = c(2,3,3,4,4,5),
|
||||
value = c(8,4,2,8,4,2)
|
||||
)
|
||||
)
|
||||
fig <- fig %>% layout(
|
||||
title = "Basic Sankey Diagram",
|
||||
font = list(
|
||||
size = 10
|
||||
)
|
||||
)
|
||||
|
||||
fig
|
||||
|
||||
```
|
||||
BIN
1 PA Decline/Fra DDV/.DS_Store
vendored
Normal file
BIN
1 PA Decline/Fra DDV/240620/.DS_Store
vendored
Normal file
BIN
1 PA Decline/Fra DDV/240620/calibration.png
Executable file
|
After Width: | Height: | Size: 101 KiB |
BIN
1 PA Decline/Fra DDV/240620/calibration_imp.png
Executable file
|
After Width: | Height: | Size: 101 KiB |
BIN
1 PA Decline/Fra DDV/240620/pa_change_analyses.docx
Executable file
BIN
1 PA Decline/Fra DDV/240620/pa_change_tbl1.docx
Executable file
BIN
1 PA Decline/Fra DDV/240624/.DS_Store
vendored
Normal file
BIN
1 PA Decline/Fra DDV/240624/calibration_imp.png
Normal file
|
After Width: | Height: | Size: 225 KiB |
BIN
1 PA Decline/Fra DDV/240624/pa_change_analyses.docx
Normal file
BIN
1 PA Decline/Fra DDV/241002/.DS_Store
vendored
Normal file
9
1 PA Decline/Fra DDV/241002/excluded.R
Executable file
|
|
@ -0,0 +1,9 @@
|
|||
targets::tar_read(df_all_data_formatted) |>
|
||||
get_vars(c("clin","lifestyle","ses", "assess.pred")) |>
|
||||
dplyr::mutate(exclude=ifelse(is.na(pase_0)|is.na(pase_4),"Excluded","Included"))|>
|
||||
dplyr::select(-pase_0,-pase_4) |>
|
||||
dplyr::select(exclude,soc_status_nowork, fam_indk_hl, edu_level_hl)|>
|
||||
gtsummary::tbl_summary(by=exclude) |>
|
||||
gtsummary::add_p() |>
|
||||
fix_labels() |>
|
||||
mask_micro_summary(micro.n = 5)
|
||||
BIN
1 PA Decline/Fra DDV/241002/minimal_perf_all.docx
Executable file
BIN
1 PA Decline/Fra DDV/241002/mmrm.docx
Normal file
BIN
1 PA Decline/Fra DDV/241002/mmrm_female.docx
Executable file
BIN
1 PA Decline/Fra DDV/241002/mmrm_male.docx
Executable file
BIN
1 PA Decline/Fra DDV/241002/pa_change_missings.docx
Executable file
BIN
1 PA Decline/Fra DDV/241002/~$mmrm.docx
Normal file
BIN
1 PA Decline/Fra DDV/calibration_imp.xlsx
Normal file
2627
1 PA Decline/Fra DDV/functions200411.R
Executable file
2688
1 PA Decline/Fra DDV/functions240418.R
Normal file
BIN
1 PA Decline/Fra DDV/pa_change_analyses240411.docx
Executable file
BIN
1 PA Decline/Fra DDV/pa_change_analyses240411_coefs.docx
Normal file
BIN
1 PA Decline/Fra DDV/pa_change_analyses240418.docx
Normal file
BIN
1 PA Decline/Fra DDV/pa_change_tbl1240411.docx
Executable file
251
1 PA Decline/Til DDV/00master.R
Normal file
|
|
@ -0,0 +1,251 @@
|
|||
##
|
||||
## Master script
|
||||
##
|
||||
## Based on the assignment work from the ISL-course
|
||||
##
|
||||
## Generation 2 - 02.december.2022
|
||||
## Code preparation for analysis on Denmarks Statistics server with enriched data set.
|
||||
##
|
||||
## Analysis plan:
|
||||
## Table 1
|
||||
## Figure 1: Sankey plot (drop & hop colored)
|
||||
## Table 2: Linear regression model of pase_6~.
|
||||
## Table 3: Elastic net prediction models of drop and hop. Performance measures referenced in text.
|
||||
##
|
||||
## A Rmarkdown file could be created to write the initial report with main results.
|
||||
## This code is a bit of a mess, as it is the result of several iterations. It works however.
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
# Step 0: Primary outcome
|
||||
## ====================================================================
|
||||
|
||||
# Script to run as hop and drop
|
||||
|
||||
pout <- "drop" # Drop to first quartile
|
||||
|
||||
# decl_rel
|
||||
# decl_abs
|
||||
# drop
|
||||
# hop
|
||||
|
||||
## ====================================================================
|
||||
## Data
|
||||
## ====================================================================
|
||||
|
||||
|
||||
setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
source("data_set.R")
|
||||
|
||||
source("data_format.R")
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Baseline - by PASE group
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
ts_q <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(pase_0_cut = factor(quantile_cut(pase_0, groups = 4)[[1]],ordered = TRUE)) |>
|
||||
select(-pase_6,-pase_0) |>
|
||||
tbl_summary(missing = "no",
|
||||
by="pase_0_cut",
|
||||
value = list(where(is.factor) ~ "2"),
|
||||
type = list(mrs_0 ~ "categorical",
|
||||
all_continuous() ~ "continuous2"),
|
||||
statistic = list(all_continuous() ~ c("{N_nonmiss}",
|
||||
"{median} ({p25}, {p75})",
|
||||
"{min}, {max}",
|
||||
"{mean} ({sd})"))
|
||||
) |>
|
||||
add_overall() |>
|
||||
add_n ()
|
||||
|
||||
ts_q
|
||||
|
||||
tbl_one_rtf <- file("table1.RTF", "w")
|
||||
writeLines(ts_q%>%as_gt()%>%as_rtf(), tbl_one_rtf)
|
||||
close(tbl_one_rtf)
|
||||
|
||||
## ====================================================================
|
||||
# Drops and hops
|
||||
## ====================================================================
|
||||
|
||||
# TRUEs are patients dropping
|
||||
table(X_tbl$pase_0_cut!="1"&X_tbl$pase_6_cut=="1")/nrow(X_tbl[X_tbl$pase_0_cut!="1",])
|
||||
|
||||
# TRUEs are percentage of patients inactive before stroke being more active after
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_0_cut=="1",])
|
||||
|
||||
# TRUEs are percentage of patients being more active after that were inactive before stroke
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_6_cut!="1",])
|
||||
|
||||
# Difference between hop/no-hop
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
# Stationary low
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
## ====================================================================
|
||||
# Sankey plot
|
||||
## ====================================================================
|
||||
|
||||
# source("sankey.R")
|
||||
# p_delta
|
||||
|
||||
## ====================================================================
|
||||
# Six months PASE: Bivariate and multivariate analyses
|
||||
## ====================================================================
|
||||
|
||||
dta_lmreg <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2)))
|
||||
|
||||
Hmisc::label(dta_lmreg$mrs_0) <- "Pre-stroke mRS >0"
|
||||
|
||||
uv_reg <- tbl_uvregression(data=dta_lmreg,
|
||||
method=lm,
|
||||
y="pase_6",
|
||||
show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)
|
||||
|
||||
mu_reg <- dta_lmreg |>
|
||||
lm(formula=pase_6~.,data=_) |>
|
||||
tbl_regression(show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)|>
|
||||
add_n()
|
||||
|
||||
tbl_merge(list(uv_reg,mu_reg))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Data variance
|
||||
##
|
||||
## Illustrating principal components.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# source("PCA.R")
|
||||
#
|
||||
#
|
||||
# pca22
|
||||
# ggsave("pc_plot.png",width = 18, height = 12, dpi = 300, limitsize = TRUE, units = "cm")
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Models
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# source("assign_full.R")
|
||||
|
||||
ls <- list()
|
||||
for (i in c("drop","hop")){
|
||||
pout <- i
|
||||
source("data_format.R")
|
||||
source("regularisation_steps.R")
|
||||
}
|
||||
|
||||
# Loop to run regularised model on both drop and hop.
|
||||
# Saved in list for printing and exporting the plot.
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data merge
|
||||
## ====================================================================
|
||||
tbl<-merge(ls$drop$RegularisedCoefs$'_data',ls$hop$RegularisedCoefs$'_data',by="name",all.x=T, sort=F)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
com_coef_tbl<-tbl%>%
|
||||
gt()%>%
|
||||
fmt_number(
|
||||
columns=colnames(tbl)[sapply(tbl,is.numeric)], ## Selecting all numeric
|
||||
rows = everything(),
|
||||
decimals = 3)%>%
|
||||
tab_spanner(
|
||||
label = "DROP",
|
||||
columns = 2:5
|
||||
)%>%
|
||||
tab_spanner(
|
||||
label = "HOP",
|
||||
columns = 6:9
|
||||
)%>%
|
||||
tab_header(
|
||||
title = "Model coefficients",
|
||||
subtitle = "Combined table of both full and regularised model coefficients"
|
||||
)
|
||||
|
||||
|
||||
# paste0("Regularised model, (a=",
|
||||
# best_alph,
|
||||
# ", l=",
|
||||
# round(best_lamb,3),
|
||||
# ")")
|
||||
|
||||
com_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
com_coef_rtf <- file("table2.RTF", "w")
|
||||
writeLines(com_coef_tbl%>%as_rtf(), com_coef_rtf)
|
||||
close(com_coef_rtf)
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Model performance
|
||||
##
|
||||
## Table with performance meassures for the two different models.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data set
|
||||
## ====================================================================
|
||||
|
||||
tbl<-data.frame(Meassure=c(names(ls$drop$ConfusionMatrx$byClass),"Mean AUC"),
|
||||
"Drop"=round(c(ls$drop$ConfusionMatrx$byClass,ls$drop$AUROC["Mean"]),3),
|
||||
"Hop"=round(c(ls$hop$ConfusionMatrx$byClass,ls$hop$AUROC["Mean"]),3))
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
tbl_perf<-tbl%>%
|
||||
gt()%>%
|
||||
tab_header(
|
||||
title = "Performance meassures",
|
||||
subtitle = "Combined table of both drop and hop"
|
||||
)
|
||||
|
||||
tbl_perf
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
tbl_perf_rtf <- file("table3.RTF", "w")
|
||||
writeLines(tbl_perf%>%as_rtf(), tbl_perf_rtf)
|
||||
close(tbl_perf_rtf)
|
||||
|
||||
|
||||
|
||||
50
1 PA Decline/Til DDV/data_format.R
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
## Article 1 outcome group definition script
|
||||
## To be enriched from Statistics Denmark
|
||||
##
|
||||
## Based on the ItMLiHSmar2022 course
|
||||
|
||||
library(Hmisc)
|
||||
library(dplyr)
|
||||
library(daDoctoR)
|
||||
library(tidyselect)
|
||||
|
||||
# Setting final primary output from "pout"
|
||||
if (pout=="drop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_drop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_0_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
if (pout=="hop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_hop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_6_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
# Dropping non-complete for analysis
|
||||
Xy <- X_tbl_f|>
|
||||
na.omit()|> # Keeping only complete observations
|
||||
select(-c(tci) # Left out of model as no present in drop-group
|
||||
)|>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2))) # Sets binary mRS 0 to include in glmnet, 0 or above
|
||||
|
||||
label(Xy) = as.list(var.labels[match(names(Xy), names(var.labels))])
|
||||
|
||||
X<-dplyr::select(Xy,-c(group, -starts_with("pase_")) # Exclude primary outcome
|
||||
)
|
||||
y<-Xy$group
|
||||
|
||||
193
1 PA Decline/Til DDV/data_set.R
Normal file
|
|
@ -0,0 +1,193 @@
|
|||
## Article 1 data set definition
|
||||
## To be enriched from Statistics Denmark
|
||||
##
|
||||
## Based on the ItMLiHSmar2022 course
|
||||
|
||||
library(Hmisc)
|
||||
library(dplyr)
|
||||
library(daDoctoR)
|
||||
library(tidyverse)
|
||||
library(patchwork)
|
||||
library(caret)
|
||||
library(glmnet)
|
||||
library(leaps)
|
||||
library(pROC)
|
||||
library(gt)
|
||||
library(gtsummary)
|
||||
library(glue)
|
||||
# library(ggdendro)
|
||||
library(corrplot)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: Selection
|
||||
## ====================================================================
|
||||
|
||||
|
||||
export<-export[,c("pase_0",
|
||||
"age",
|
||||
"sex",
|
||||
"civil",
|
||||
"smoke_ever",
|
||||
"smoker",
|
||||
"rtreat",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"thrombolysis",
|
||||
"pad",
|
||||
"thrombechtomy",
|
||||
"ami",
|
||||
"tci",
|
||||
"pase_6")]
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: Formatting variables
|
||||
## ====================================================================
|
||||
|
||||
export$diabetes[is.na(export$diabetes)]<-"no"
|
||||
export$diabetes[is.na(export$hypertension)]<-"no"
|
||||
export$thrombolysis[is.na(export$thrombolysis)]<-"no"
|
||||
export$thrombechtomy[is.na(export$thrombechtomy)]<-"no"
|
||||
export$pad[is.na(export$pad)]<-"no"
|
||||
export$ami[is.na(export$ami)]<-"no"
|
||||
# export$smoker_prev <- ifelse(export$smoker=="3","yes","no")
|
||||
export$smoker <- ifelse(export$smoker=="1","yes","no")
|
||||
export$smoker[is.na(export$smoker)] <- "no"
|
||||
# export$mrs_0[export$mrs_0==3]<-NA
|
||||
|
||||
dta <- export %>%
|
||||
# as_tibble()%>%
|
||||
mutate(any_rep=factor(ifelse(thrombolysis=="yes"|thrombechtomy=="yes","yes","no")), # If not noted, no therapy was received
|
||||
male_sex= factor(ifelse(sex=="female","no","yes")),
|
||||
# smoke_ever=factor(ifelse(smoke_ever=="never","no","yes")),
|
||||
civil=factor(ifelse(civil=="partner","no","yes")), # Sets "yes" for not-cohabiting
|
||||
rtreat=factor(ifelse(rtreat=="Placebo","no","yes")), # "Yes" receives active treatment
|
||||
alc=factor(ifelse(alc=="more","yes","no")), # Yes for more than guideline
|
||||
pase_0=as.numeric(pase_0),
|
||||
pase_6=as.numeric(pase_6),
|
||||
across(c("diabetes",
|
||||
"hypertension",
|
||||
"smoker",
|
||||
"afli",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0"),as.factor),
|
||||
across(c("nihss_c",
|
||||
"age"),as.numeric )
|
||||
)%>%
|
||||
select(-c(sex))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Defining outcome
|
||||
## ====================================================================
|
||||
|
||||
## Changed to step 7
|
||||
## This is to perform proper quantile split based on actually included.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: Ordering variables
|
||||
## ====================================================================
|
||||
|
||||
vars <- c("age",
|
||||
"male_sex",
|
||||
"civil",
|
||||
"pase_0",
|
||||
"smoker",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"any_rep",
|
||||
"rtreat",
|
||||
"pase_6")
|
||||
|
||||
dta<-dta[vars]
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: Labeling
|
||||
## ====================================================================
|
||||
|
||||
var.labels = c(age="Age",
|
||||
male_sex="Male",
|
||||
civil="Living alone",
|
||||
pase_0="Pre-stroke PASE score",
|
||||
pase_6="Six month PASE score",
|
||||
smoker="Daily or occasinally smoking",
|
||||
alc="More alcohol than recommendation",
|
||||
afli="AFIB",
|
||||
hypertension="Hypertension",
|
||||
diabetes="Diabetes",
|
||||
pad="PAD",
|
||||
ami="Previous MI",
|
||||
tci="Previous TIA",
|
||||
mrs_0="Pre-stroke mRS [-1]",
|
||||
nihss_c="Acute NIHSS score",
|
||||
thrombolysis="Acute thrombolysis",
|
||||
thrombechtomy="Acute thrombechtomy",
|
||||
any_rep="Any reperfusion therapy",
|
||||
rtreat="Active trial treatment",
|
||||
pase_drop_fac="PASE first quartile drop F",
|
||||
pase_hop_fac="PASE first quartile hop F",
|
||||
pase_0_cut="PASE 0 quartiles",
|
||||
pase_6_cut="PASE 6 quartiles")
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 7: final data export
|
||||
## ====================================================================
|
||||
|
||||
data_summary<-summary(dta)
|
||||
|
||||
# Saving "old" factorised variables
|
||||
sel<-sapply(dta,is.factor)
|
||||
# Reformatting factors as 1/2 for analysis
|
||||
dta<-dta |>
|
||||
mutate(across(where(is.factor), as.numeric))|> # Turning factors into 1(no) or 2(yes) for model. Numbered alphabetically.
|
||||
mutate(across(matches(colnames(dta)[sel]), as.factor),
|
||||
across(starts_with("pase_"), as.numeric))
|
||||
|
||||
# Filtering out non-PASE
|
||||
X_tbl<-dta |>
|
||||
filter(!is.na(pase_0),!is.na(pase_6))
|
||||
|
||||
nrow(X_tbl)
|
||||
|
||||
# Defining possible outcome meassures. Keeping in df for characterisation
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(## Relative decline
|
||||
pase_diff=(pase_0-pase_6),
|
||||
pase_decl_rel = pase_diff/pase_0*100,
|
||||
# pase_decl_rel_fac=factor(ifelse(pase_decl_rel>=rel_dif,"yes","no")),
|
||||
## Absolute decline
|
||||
# pase_decl_abs_fac=factor(ifelse(pase_diff>=abs_dif,"yes","no")),
|
||||
## Drop
|
||||
pase_0_cut=quantile_cut(as.numeric(pase_0),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE,
|
||||
detail.lst=FALSE),
|
||||
pase_6_cut=quantile_cut(as.numeric(pase_6),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE,
|
||||
detail.lst=FALSE),
|
||||
pase_drop_fac=factor(ifelse(pase_6_cut==1&pase_0_cut!=1,"yes","no")),
|
||||
pase_hop_fac=factor(ifelse(pase_6_cut!=1&pase_0_cut==1,"yes","no")))
|
||||
|
||||
Hmisc::label(X_tbl) = as.list(var.labels[match(names(X_tbl), names(var.labels))])
|
||||
|
||||
117
1 PA Decline/Til DDV/regular_fun.R
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
## ItMLiHSmar2022
|
||||
## regular_fun.R, child script
|
||||
## Regularisation model building function
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
regular_fun<-function(X,y,K,lambdas,alpha){
|
||||
n<-nrow(X)
|
||||
set.seed(321)
|
||||
|
||||
# Using caret function to ensure both levels represented in all folds
|
||||
c<-createFolds(y=y, k = K, list = FALSE, returnTrain = TRUE)
|
||||
|
||||
B<-yhatTestProbKeep<-list()
|
||||
accTrain<-accTest<-err_train<-err_test<-auc_train<-auc_test<-matrix(nrow = K,ncol = length(lambdas))
|
||||
|
||||
catinfo<-levels(y)
|
||||
|
||||
cMatTrain<-cMatTest<-table(true=factor(c(0,0),levels=catinfo),pred=factor(c(0,0),levels=catinfo))
|
||||
|
||||
|
||||
## Iterate over partitions
|
||||
for (idx1 in 1:K){
|
||||
|
||||
# Status
|
||||
cat('Processing fold', idx1, 'of', K,'\n')
|
||||
|
||||
# idx1=1
|
||||
# Get training- and test sets
|
||||
I_train = c!=idx1 ## Creating selection vector of TRUE/FALSE
|
||||
I_test = !I_train
|
||||
|
||||
Xtrain = X[I_train,]
|
||||
ytrain = y[I_train]
|
||||
Xtest = X[I_test,]
|
||||
ytest = y[I_test]
|
||||
|
||||
|
||||
## Model matrices for glmnet
|
||||
## Using the complicated approach not to include first level.
|
||||
# Xmat.train<-model.matrix(~ .-1, data=Xtrain,
|
||||
# contrasts.arg = lapply(Xtrain[,sapply(Xtrain, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
# Xmat.test<-model.matrix(~ .-1, data=Xtest,
|
||||
# contrasts.arg = lapply(Xtest[,sapply(Xtest, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
|
||||
# Xmat.train<-model.matrix(~.-1,Xtrain)
|
||||
# Xmat.test<-model.matrix(~.-1,Xtest)
|
||||
|
||||
# Weights
|
||||
ytrain_weight<-as.vector(1 - (table(ytrain)[ytrain] / length(ytrain)))
|
||||
# ytest_weight<-as.vector(1 / (table(ytest)[ytest] / length(ytest)))
|
||||
|
||||
# Fit regularized linear regression model
|
||||
mod<-glmnet(Xtrain, ytrain,
|
||||
alpha = alpha, ## Alpha = 1 for lasso
|
||||
lambda = lambdas, ## Setting lambdas
|
||||
standardize = TRUE, ## Scales and centers
|
||||
weights = ytrain_weight,
|
||||
family = "binomial"
|
||||
)
|
||||
|
||||
# Keep coefficients for plot
|
||||
B[[idx1]] <- as.matrix(coef(mod))
|
||||
|
||||
# Iterate over regularization strengths to compute training- and test
|
||||
# errors for individual regularization strengths.
|
||||
for (idx2 in 1:length(lambdas)){
|
||||
# idx2=1
|
||||
|
||||
# Predict
|
||||
yhatTrainProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtrain),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
yhatTestProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtest),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
# Compute training and test error
|
||||
yhatTrain = round(yhatTrainProb)
|
||||
yhatTest = round(yhatTestProb)
|
||||
|
||||
# Make predictions categorical again (instead of 0/1 coding)
|
||||
yhatTrainCat = factor(round(yhatTrainProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
yhatTestCat = factor(round(yhatTestProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
|
||||
# Evaluate classifier performance
|
||||
# Accuracy
|
||||
# accTrain[idx1,idx2] <- sum(yhatTrainCat==ytrain)/length(ytrain)
|
||||
# accTest [idx1,idx2] <- sum(yhatTestCat==ytest)/length(ytest)
|
||||
# #
|
||||
# # Error rate
|
||||
# err_train[idx1,idx2] = 1 - accTrain[idx1,idx2]
|
||||
# err_test [idx1,idx2] = 1 - accTest[idx1,idx2]
|
||||
|
||||
# AUROC
|
||||
suppressMessages(
|
||||
auc_train[idx1,idx2]<-auc(ytrain, yhatTrainCat))
|
||||
suppressMessages(
|
||||
auc_test [idx1,idx2]<-auc(ytest, yhatTestCat))
|
||||
|
||||
# Compute confusion matrices
|
||||
cMatTrain = cMatTrain + table(true=ytrain,pred=yhatTrainCat)
|
||||
cMatTest = cMatTest + table(true=ytest,pred=yhatTestCat)
|
||||
}
|
||||
}
|
||||
ls<-list(mod=mod,B=B,auc_train=auc_train,auc_test=auc_test,cMatTrain=cMatTrain,cMatTest=cMatTest)
|
||||
return(ls)
|
||||
}
|
||||
150
1 PA Decline/Til DDV/regularisation_steps.R
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
## ItMLiHSmar2022
|
||||
## regularisation_steps.R, child script
|
||||
## Regularised model building and analysation for assignment
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
## Step 0: data import and wrangling
|
||||
## ====================================================================
|
||||
|
||||
setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
# source("data_format.R")
|
||||
y1<-factor(as.integer(y)-1) ## Outcome is required to be factor of 0 or 1.
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 1: settings
|
||||
## ====================================================================
|
||||
|
||||
## Folds
|
||||
K=10
|
||||
set.seed(3)
|
||||
c<-caret::createFolds(y=y,
|
||||
k = K,
|
||||
list = FALSE,
|
||||
returnTrain = TRUE) # Foldids for alpha tuning
|
||||
|
||||
## Defining tuning parameters
|
||||
lambdas=2^seq(-10, 5, 1)
|
||||
alphas<-seq(0,1,.1)
|
||||
|
||||
## Weights for models
|
||||
weighted=TRUE
|
||||
if (weighted == TRUE) {
|
||||
wght<-as.vector(1 - (table(y)[y] / length(y)))
|
||||
} else {
|
||||
wght <- rep(1, nrow(y))
|
||||
}
|
||||
|
||||
|
||||
## Standardise numeric
|
||||
## Centered and
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 2: all cross validations for each alpha
|
||||
## ====================================================================
|
||||
|
||||
library(furrr)
|
||||
library(purrr)
|
||||
library(doMC)
|
||||
registerDoMC(cores=6)
|
||||
|
||||
# Nested CVs with analysis for all lambdas for each alpha
|
||||
#
|
||||
set.seed(3)
|
||||
cvs <- future_map(alphas, function(a){
|
||||
cv.glmnet(model.matrix(~.-1,X),
|
||||
y1,
|
||||
weights = wght,
|
||||
lambda=lambdas,
|
||||
type.measure = "deviance", # This is standard measure and recommended for tuning
|
||||
foldid = c, # Per recommendation the folds are kept for alpha optimisation
|
||||
alpha=a,
|
||||
standardize=TRUE,
|
||||
family=quasibinomial,
|
||||
keep=TRUE) # Same as binomial, but not as picky
|
||||
})
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: optimum lambda for each alpha
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# For each alpha, lambda is chosen for the lowest meassure (deviance)
|
||||
each_alpha <- sapply(seq_along(alphas), function(id) {
|
||||
each_cv <- cvs[[id]]
|
||||
alpha_val <- alphas[id]
|
||||
index_lmin <- match(each_cv$lambda.min,
|
||||
each_cv$lambda)
|
||||
c(lamb = each_cv$lambda.min,
|
||||
alph = alpha_val,
|
||||
cvm = each_cv$cvm[index_lmin])
|
||||
})
|
||||
|
||||
# Best lambda
|
||||
best_lamb <- min(each_alpha["lamb", ])
|
||||
|
||||
# Alpha is chosen for best lambda with lowest model deviance, each_alpha["cvm",]
|
||||
best_alph <- each_alpha["alph",][each_alpha["cvm",]==min(each_alpha["cvm",]
|
||||
[each_alpha["lamb",] %in% best_lamb])]
|
||||
|
||||
## https://stackoverflow.com/questions/42007313/plot-an-roc-curve-in-r-with-ggplot2
|
||||
p_roc<-roc.glmnet(cvs[[1]]$fit.preval, newy = y)[[match(best_alph,alphas)]]|> # Plots performance from model with best alpha
|
||||
ggplot(aes(FPR,TPR)) +
|
||||
geom_step() +
|
||||
coord_cartesian(xlim=c(0,1), ylim=c(0,1)) +
|
||||
geom_abline()+
|
||||
theme_bw()
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Creating the final model
|
||||
## ====================================================================
|
||||
|
||||
source("regular_fun.R") # Custom function
|
||||
optimised_model<-regular_fun(X,y1,K,lambdas=best_lamb,alpha=best_alph)
|
||||
# With lambda and alpha specified, the function is just a k-fold cross-validation wrapper,
|
||||
# but keeps model performance figures from each fold.
|
||||
|
||||
list2env(optimised_model,.GlobalEnv)
|
||||
# Function outputs a list, which is unwrapped to Env.
|
||||
# See source script for reference.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: creating table of coefficients for inference
|
||||
## ====================================================================
|
||||
|
||||
Bmatrix<-matrix(unlist(B),ncol=10)
|
||||
Bmedian<-apply(Bmatrix,1,median)
|
||||
Bmean<-apply(Bmatrix,1,mean)
|
||||
|
||||
reg_coef_tbl<-tibble(
|
||||
name = c("Intercept",Hmisc::label(X)),
|
||||
medianX = round(Bmedian,5),
|
||||
ORmed = round(exp(Bmedian),5),
|
||||
meanX = round(Bmean,5),
|
||||
ORmea = round(exp(Bmean),5))%>%
|
||||
# arrange(desc(abs(medianX)))%>%
|
||||
gt()
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: plotting predictive performance
|
||||
## ====================================================================
|
||||
|
||||
reg_cfm<-confusionMatrix(cMatTest)
|
||||
reg_auc_sum<-summary(auc_test[,1])
|
||||
|
||||
## ====================================================================
|
||||
# Step 7: Packing list to save in loop
|
||||
## ====================================================================
|
||||
|
||||
ls[[i]] <- list("RegularisedCoefs"=reg_coef_tbl,
|
||||
"bestA"=best_alph,
|
||||
"bestL"=best_lamb,
|
||||
"ConfusionMatrx"=reg_cfm,
|
||||
"AUROC"=reg_auc_sum)
|
||||
41
1 PA Decline/Til DDV/standardise.R
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
## ItMLiHSmar2022
|
||||
## standardise.R, child script
|
||||
## Data standardisation, returns list
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
|
||||
standardise<-function(train,test,type){
|
||||
# From:
|
||||
# https://datascience.stackexchange.com/questions/13971/standardization-normalization-test-data-in-r
|
||||
|
||||
sel<-sapply(Xtrain,is.numeric) # Deciding which to stadardise (only numeric)
|
||||
cnm<-colnames(Xtrain) # Saving column names for ordering
|
||||
|
||||
# Subsetting
|
||||
|
||||
## Data to treat
|
||||
train.tr<-train[,sel]
|
||||
test.tr<-test[,sel]
|
||||
|
||||
## Data to save
|
||||
train.sv<-train[,!sel]
|
||||
test.sv<-test[,!sel]
|
||||
|
||||
# Calculate mean and SD of train data
|
||||
trainMean <- sapply(train.tr,mean)
|
||||
trainSd <- sapply(train.tr,sd)
|
||||
|
||||
if (type=="c"){
|
||||
## centered
|
||||
norm.trainData<-sweep(train.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
norm.testData<-sweep(test.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
}
|
||||
|
||||
if (type=="cs"){
|
||||
## centered AND scaled (Z-score standardisation)
|
||||
norm.trainData<-sweep(sweep(train.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
norm.testData<-sweep(sweep(test.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
}
|
||||
return(list(XtrainSt=cbind(norm.trainData,train.sv)[,cnm], # Reordering columns to original
|
||||
XtestSt=cbind(norm.testData,test.sv)[,cnm]))
|
||||
}
|
||||
|
||||
BIN
1 PA Decline/archive/.DS_Store
vendored
Normal file
98
1 PA Decline/archive/dataset.R
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
# Data
|
||||
## Import from previous work
|
||||
dta<-read.csv("/Volumes/Data/exercise/source/background.csv",na.strings = c("NA","","unknown"),colClasses = "character")
|
||||
|
||||
## Cleaning and enhancing
|
||||
dta$pase_drop<-factor(ifelse((dta$pase_0_q=="q_2"|dta$pase_0_q=="q_3"|dta$pase_0_q=="q_4")&dta$pase_06_q=="q_1","yes","no"),levels = c("no","yes"))
|
||||
dta$pase_drop[is.na(dta$pase_6)]<-NA
|
||||
dta$pase_drop[is.na(dta$pase_0)]<-NA
|
||||
|
||||
## Selection of data set and formatting
|
||||
library(dplyr)
|
||||
dta_f<-dta %>% filter(pase_0_q != "q_1" & !is.na(pase_drop))
|
||||
|
||||
|
||||
variable_names<-c("age","sex","weight","height",
|
||||
"bmi",
|
||||
"smoke_ever",
|
||||
"civil",
|
||||
"diabetes",
|
||||
"hypertension",
|
||||
"pad",
|
||||
"afli",
|
||||
"ami",
|
||||
"tci",
|
||||
"nihss_0",
|
||||
"thrombolysis",
|
||||
"thrombechtomy",
|
||||
"rep_any","pase_0_q","pase_drop")
|
||||
|
||||
|
||||
library(daDoctoR)
|
||||
dta2<-dta_f[,variable_names]
|
||||
|
||||
dta2<-col_num(c("age","weight","height","bmi","nihss_0"),dta2)
|
||||
dta2<-col_fact(c("sex","smoke_ever","civil","diabetes", "hypertension","pad", "afli", "ami", "tci","thrombolysis", "thrombechtomy","rep_any","pase_0_q","pase_drop"),dta2)
|
||||
|
||||
## Partitioning
|
||||
library(caret)
|
||||
set.seed(100)
|
||||
|
||||
## Step 1: Get row numbers for the training data
|
||||
trainRowNumbers <- createDataPartition(dta2$pase_drop, p=0.8, list=FALSE)
|
||||
|
||||
## Step 2: Create the training dataset
|
||||
trainData <- dta2[trainRowNumbers,]
|
||||
|
||||
## Step 3: Create the test dataset
|
||||
testData <- dta2[-trainRowNumbers,]
|
||||
y_test = testData[,"pase_drop"]
|
||||
|
||||
# Store X and Y for later use.
|
||||
x = trainData %>% select(!matches("pase_drop"))
|
||||
y = trainData[,"pase_drop"]
|
||||
|
||||
# Normalization and dummy binaries
|
||||
|
||||
# One-Hot Encoding
|
||||
# Creating dummy variables is converting a categorical variable to as many binary variables as here are categories.
|
||||
dummies_model <- dummyVars(pase_drop ~ ., data=trainData)
|
||||
|
||||
# Create the dummy variables using predict. The Y variable (Purchase) will not be present in trainData_mat.
|
||||
trainData_mat <- predict(dummies_model, newdata = trainData)
|
||||
|
||||
# # Convert to dataframe
|
||||
trainData <- data.frame(trainData_mat)
|
||||
|
||||
# # See the structure of the new dataset
|
||||
str(trainData)
|
||||
|
||||
dummies_model <- dummyVars(pase_drop ~ ., data=testData)
|
||||
testData_mat <- predict(dummies_model, newdata = testData)
|
||||
testData <- data.frame(testData_mat)
|
||||
preProcess_range_model <- preProcess(testData, method='range')
|
||||
testData <- predict(preProcess_range_model, newdata = testData)
|
||||
testData$pase_drop<-y_test
|
||||
|
||||
# Imputation
|
||||
|
||||
library(RANN) # required for knnInpute
|
||||
preProcess_missingdata_model <- preProcess(trainData, method='knnImpute')
|
||||
# preProcess_missingdata_model
|
||||
|
||||
trainData <- predict(preProcess_missingdata_model, newdata = trainData) # Giver fejl??
|
||||
anyNA(trainData)
|
||||
|
||||
# skimr::skim(trainData)
|
||||
# skimr::skim(x)
|
||||
|
||||
preProcess_range_model <- preProcess(trainData, method='range')
|
||||
trainData <- predict(preProcess_range_model, newdata = trainData)
|
||||
|
||||
# Append the Y variable
|
||||
trainData$pase_drop <- y
|
||||
|
||||
|
||||
# Export
|
||||
write.csv(trainData,"/Users/au301842/PhysicalActivityandStrokeOutcome/data/trainData.csv",row.names = FALSE)
|
||||
write.csv(testData,"/Users/au301842/PhysicalActivityandStrokeOutcome/data/testData.csv",row.names = FALSE)
|
||||
BIN
1 PA Decline/archive/generation_1/.DS_Store
vendored
Normal file
409
1 PA Decline/archive/generation_1/00master.R
Normal file
|
|
@ -0,0 +1,409 @@
|
|||
##
|
||||
## Master script
|
||||
##
|
||||
## Based on the assignment work from the ISL-course
|
||||
##
|
||||
##
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
# Step 0: Primary outcome
|
||||
## ====================================================================
|
||||
|
||||
# Difs
|
||||
rel_dif <- 20 # 20 % difference
|
||||
abs_dif <- 20 # 20 point diff
|
||||
|
||||
# pout <- "diff"
|
||||
#
|
||||
# Note:: By increasing the relative decline, the sensitivity increases and specificity declines.
|
||||
# This fact is an argument against over fitting. The reason being the nature of the clinical data and the fact, that predicting PA is difficult (!)
|
||||
#
|
||||
pout <- "drop" # Drop to first quartile
|
||||
|
||||
# decl_rel
|
||||
# decl_abs
|
||||
# drop
|
||||
# hop
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Data
|
||||
## ====================================================================
|
||||
|
||||
|
||||
setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
source("data_set.R")
|
||||
# Loading data-set from USB, to not store on computer
|
||||
|
||||
source("data_format.R")
|
||||
|
||||
## ====================================================================
|
||||
# Libraries
|
||||
## ====================================================================
|
||||
|
||||
|
||||
library(tidyverse)
|
||||
library(glue)
|
||||
library(patchwork)
|
||||
# library(ggdendro)
|
||||
library(corrplot)
|
||||
library(gt)
|
||||
library(gtsummary)
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Baseline
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 0: labels
|
||||
## ====================================================================
|
||||
|
||||
|
||||
lbs<-var.labels[match(colnames(X_tbl),
|
||||
names(var.labels))]
|
||||
|
||||
ls<-lapply(1:ncol(X_tbl),function(x){
|
||||
as.formula(paste0(names(lbs)[x],"~","\"",lbs[x],"\""))
|
||||
})
|
||||
|
||||
ts<-tbl_summary(X_tbl|>filter(pase_0_cut!="1"),
|
||||
by = "group",
|
||||
missing = "no",
|
||||
# label = ls[-length(ls)], ## Removing the last, as this is output
|
||||
value = list(where(is.factor) ~ "2"),
|
||||
type = list(mrs_0 ~ "categorical"),
|
||||
statistic = list(all_continuous() ~ "{median} ({p25};{p75}) [{min},{max}]")
|
||||
)%>%
|
||||
add_overall() %>%
|
||||
add_n()%>%
|
||||
as_gt()
|
||||
|
||||
ts
|
||||
|
||||
ts_rtf <- file("table1.RTF", "w")
|
||||
writeLines(ts%>%as_rtf(), ts_rtf)
|
||||
close(ts_rtf)
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: labels
|
||||
## ====================================================================
|
||||
lbs<-var.labels[match(colnames(X_tbl_f), names(var.labels))]
|
||||
|
||||
ls<-lapply(1:ncol(X_tbl_f),function(x){
|
||||
as.formula(paste0(names(lbs)[x],"~","\"",lbs[x],"\""))
|
||||
})
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table - edited
|
||||
## ====================================================================
|
||||
|
||||
ts_e<-tbl_summary(X_tbl,
|
||||
missing = "no",
|
||||
value = list(where(is.factor) ~ "2"),
|
||||
type = list(mrs_0 ~ "categorical",
|
||||
mrs_1 ~ "categorical"),
|
||||
statistic = list(all_continuous() ~ "{median} ({p25};{p75}) [{min},{max}]")
|
||||
)%>%
|
||||
as_gt()
|
||||
|
||||
ts_e
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: table export
|
||||
## ====================================================================
|
||||
|
||||
ts_rtf <- file("table1_overall.RTF", "w")
|
||||
writeLines(ts%>%as_rtf(), ts_rtf)
|
||||
close(ts_rtf)
|
||||
|
||||
## ====================================================================
|
||||
# Baseline table - by PASE group
|
||||
## ====================================================================
|
||||
|
||||
ts_q <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(pase_0_cut = factor(quantile_cut(pase_0, groups = 4)[[1]],ordered = TRUE)) |>
|
||||
select(-pase_6,-pase_0) |>
|
||||
tbl_summary(missing = "no",
|
||||
by="pase_0_cut",
|
||||
value = list(where(is.factor) ~ "2"),
|
||||
type = list(mrs_0 ~ "categorical"),
|
||||
statistic = list(all_continuous() ~ "{median} ({p25};{p75}) [{min},{max}]")
|
||||
) |>
|
||||
add_overall() |>
|
||||
add_n ()
|
||||
|
||||
ts_q
|
||||
|
||||
## ====================================================================
|
||||
# Drops and hops
|
||||
## ====================================================================
|
||||
|
||||
# TRUEs are patients dropping
|
||||
table(X_tbl$pase_0_cut!="1"&X_tbl$pase_6_cut=="1")/nrow(X_tbl[X_tbl$pase_0_cut!="1",])
|
||||
|
||||
# TRUEs are percentage of patients inactive before stroke being more active after
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_0_cut=="1",])
|
||||
|
||||
# TRUEs are percentage of patients being more active after that were inactive before stroke
|
||||
table(X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1")/nrow(X_tbl[X_tbl$pase_6_cut!="1",])
|
||||
|
||||
# Difference between hop/no-hop
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"])
|
||||
|
||||
summary(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut!="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"])
|
||||
|
||||
# Stationary low
|
||||
t.test(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
boxplot(X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_0"],X_tbl[X_tbl$pase_0_cut=="1"&X_tbl$pase_6_cut=="1","pase_6"])
|
||||
|
||||
## ====================================================================
|
||||
# Sankey plot
|
||||
## ====================================================================
|
||||
|
||||
if (pout=="drop"){
|
||||
source("sankey.R")
|
||||
p_delta
|
||||
}
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Six months PASE: Bivariate and multivariate analyses
|
||||
## ====================================================================
|
||||
|
||||
dta_lmreg <- X_tbl |>
|
||||
select(vars) |>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2)))
|
||||
|
||||
Hmisc::label(dta_lmreg$mrs_0) <- "Pre-stroke mRS >0"
|
||||
|
||||
uv_reg <- tbl_uvregression(data=dta_lmreg,
|
||||
method=lm,
|
||||
y="pase_6",
|
||||
show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)
|
||||
|
||||
mu_reg <- dta_lmreg |>
|
||||
lm(formula=pase_6~.,data=_) |>
|
||||
tbl_regression(show_single_row = where(is.factor),
|
||||
estimate_fun = ~style_sigfig(.x,digits = 3),
|
||||
pvalue_fun = ~style_pvalue(.x, digits = 3)
|
||||
)|>
|
||||
add_n()
|
||||
|
||||
tbl_merge(list(uv_reg,mu_reg))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Data variance
|
||||
##
|
||||
## Illustrating principal components.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# source("PCA.R")
|
||||
#
|
||||
#
|
||||
# pca22
|
||||
# ggsave("pc_plot.png",width = 18, height = 12, dpi = 300, limitsize = TRUE, units = "cm")
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Models
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
source("assign_full.R")
|
||||
source("regularisation_steps.R")
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data merge
|
||||
## ====================================================================
|
||||
tbl<-merge(reg_coef_tbl$'_data',full_coef_tbl$'_data',by="name",all.x=T, sort=F)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
com_coef_tbl<-tbl%>%
|
||||
gt()%>%
|
||||
fmt_number(
|
||||
columns=colnames(tbl)[sapply(tbl,is.numeric)], ## Selecting all numeric
|
||||
rows = everything(),
|
||||
decimals = 3)%>%
|
||||
tab_spanner(
|
||||
label = "Full model",
|
||||
columns = 6:8
|
||||
)%>%
|
||||
tab_spanner(
|
||||
label = paste0("Regularised model, (a=",
|
||||
best_alph,
|
||||
", l=",
|
||||
round(best_lamb,3),
|
||||
")"),
|
||||
columns = 2:5
|
||||
)%>%
|
||||
tab_header(
|
||||
title = "Model coefficients",
|
||||
subtitle = "Combined table of both full and regularised model coefficients"
|
||||
)
|
||||
|
||||
com_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
com_coef_rtf <- file("table2.RTF", "w")
|
||||
writeLines(com_coef_tbl%>%as_rtf(), com_coef_rtf)
|
||||
close(com_coef_rtf)
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Model performance
|
||||
##
|
||||
## Table with performance meassures for the two different models.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
# ROC curve of best model
|
||||
|
||||
p_roc
|
||||
ggsave("roc_plot.png",width = 12, height = 12, dpi = 300, limitsize = TRUE, units = "cm")
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data set
|
||||
## ====================================================================
|
||||
tbl<-data.frame(Meassure=c(names(full_cfm$byClass),"Mean AUC"),
|
||||
"Regularised model"=round(c(reg_cfm$byClass,reg_auc_sum["Mean"]),3),
|
||||
"Full model"=round(c(full_cfm$byClass,full_auc_sum["Mean"]),3))
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
tbl_perf<-tbl%>%
|
||||
gt()%>%
|
||||
tab_header(
|
||||
title = "Performance meassures",
|
||||
subtitle = "Combined table of both full and regularised performance meassures"
|
||||
)
|
||||
|
||||
tbl_perf
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
tbl_perf_rtf <- file("table3.RTF", "w")
|
||||
writeLines(tbl_perf%>%as_rtf(), tbl_perf_rtf)
|
||||
close(tbl_perf_rtf)
|
||||
#
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Secondary analysis
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
Xy<-dta_s
|
||||
X<-dta_s|>select(-group)
|
||||
y<-dta_s$group
|
||||
|
||||
|
||||
source("assign_full.R")
|
||||
source("regularisation_steps.R")
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data merge
|
||||
## ====================================================================
|
||||
tbl<-merge(reg_coef_tbl$'_data',full_coef_tbl$'_data',by="name",all.x=T, sort=F)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
com_coef_tbl<-tbl%>%
|
||||
gt()%>%
|
||||
fmt_number(
|
||||
columns=colnames(tbl)[sapply(tbl,is.numeric)], ## Selecting all numeric
|
||||
rows = everything(),
|
||||
decimals = 3)%>%
|
||||
tab_spanner(
|
||||
label = "Full model",
|
||||
columns = 6:8
|
||||
)%>%
|
||||
tab_spanner(
|
||||
label = paste0("Regularised model, (a=",
|
||||
best_alph,
|
||||
", l=",
|
||||
round(best_lamb,3),
|
||||
")"),
|
||||
columns = 2:5
|
||||
)%>%
|
||||
tab_header(
|
||||
title = "Model coefficients",
|
||||
subtitle = "Combined table of both full and regularised model coefficients"
|
||||
)
|
||||
|
||||
com_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
com_coef_rtf <- file("table2_sec.RTF", "w")
|
||||
writeLines(com_coef_tbl%>%as_rtf(), com_coef_rtf)
|
||||
close(com_coef_rtf)
|
||||
|
||||
|
||||
## ====================================================================
|
||||
##
|
||||
## Model performance
|
||||
##
|
||||
## Table with performance meassures for the two different models.
|
||||
##
|
||||
## ====================================================================
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: data set
|
||||
## ====================================================================
|
||||
tbl<-data.frame(Meassure=c(names(full_cfm$byClass),"Mean AUC"),
|
||||
"Regularised model"=round(c(reg_cfm$byClass,reg_auc_sum["Mean"]),3),
|
||||
"Full model"=round(c(full_cfm$byClass,full_auc_sum["Mean"]),3))
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: table
|
||||
## ====================================================================
|
||||
tbl_perf<-tbl%>%
|
||||
gt()%>%
|
||||
tab_header(
|
||||
title = "Performance meassures",
|
||||
subtitle = "Combined table of both full and regularised performance meassures"
|
||||
)
|
||||
|
||||
tbl_perf
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: export
|
||||
## ====================================================================
|
||||
tbl_perf_rtf <- file("table3_sec.RTF", "w")
|
||||
writeLines(tbl_perf%>%as_rtf(), tbl_perf_rtf)
|
||||
close(tbl_perf_rtf)
|
||||
74
1 PA Decline/archive/generation_1/PCA.R
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
## ItMLiHSmar2022
|
||||
## PCA.R, child script
|
||||
## Principal components analysis for data visualisation
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 0: data wrangling
|
||||
## ====================================================================
|
||||
# source("data_format.R")
|
||||
|
||||
X1<-X %>% dplyr::mutate(across(where(is.factor), as.numeric))
|
||||
|
||||
pc.out<-prcomp(X1, center=TRUE, scale = TRUE)
|
||||
|
||||
pc.sum<-summary(pc.out)
|
||||
|
||||
## ====================================================================
|
||||
## Step 1: plotting
|
||||
## ====================================================================
|
||||
Xy$group<-factor(Xy$group,labels = c("No decline", "Decline"))
|
||||
|
||||
library(ggfortify)
|
||||
ppc12 <- autoplot(pc.out,
|
||||
data = Xy,
|
||||
x=1,
|
||||
y=2,
|
||||
colour = 'group')+
|
||||
labs(title = "PC1 and PC2",
|
||||
colour = "Outcome")
|
||||
ppc13 <- autoplot(pc.out,
|
||||
data = Xy,
|
||||
x=1,
|
||||
y=3,
|
||||
colour = 'group')+
|
||||
labs(title = "PC1 and PC3",
|
||||
colour = "Outcome")
|
||||
ppc23 <- autoplot(pc.out,
|
||||
data = Xy,
|
||||
x=2,
|
||||
y=3,
|
||||
colour = 'group')+
|
||||
labs(title = "PC2 and PC3",
|
||||
colour = "Outcome")
|
||||
|
||||
# Scree plot
|
||||
pscr<-tibble(x=1:dim(pc.sum$importance)[2],
|
||||
Proportion=pc.sum$importance[2,],
|
||||
Cumulative=pc.sum$importance[3,])%>%
|
||||
pivot_longer(cols=-x)%>%
|
||||
ggplot(aes(x=x,y=value,color=name))+
|
||||
geom_line()+
|
||||
geom_point()+
|
||||
ylim(0,1)+
|
||||
labs(title = "Scree plot",
|
||||
color= "Variance")+
|
||||
ylab("Variance")+
|
||||
xlab("Principal components")
|
||||
|
||||
## ====================================================================
|
||||
## Step 2: merge plots
|
||||
## ====================================================================
|
||||
library(patchwork)
|
||||
pca22<-ppc12+
|
||||
theme(legend.position="none")+
|
||||
ppc13+
|
||||
ppc23+theme(legend.position="none")+
|
||||
pscr+
|
||||
plot_layout(ncol=2)+
|
||||
plot_annotation(title = 'Principal component visualisation',
|
||||
tag_levels = "A")
|
||||
|
||||
# pca22
|
||||
|
||||
141
1 PA Decline/archive/generation_1/assign_full.R
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
## ItMLiHSmar2022
|
||||
## assign_full.R, child script
|
||||
## Full model building and analysation for assignment
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
|
||||
## ====================================================================
|
||||
## Step 0: data import and wrangling
|
||||
## ====================================================================
|
||||
|
||||
# source("data_format.R")
|
||||
|
||||
## ====================================================================
|
||||
## Step 1: settings
|
||||
## ====================================================================
|
||||
K<-10
|
||||
n<-nrow(X)
|
||||
set.seed(321)
|
||||
|
||||
# Using caret function to ensure both levels represented in all folds
|
||||
c<-createFolds(y=y, k = K, list = FALSE, returnTrain = TRUE)
|
||||
|
||||
B<-list()
|
||||
auc_train<-auc_test<-c()
|
||||
|
||||
catinfo<-levels(y)
|
||||
|
||||
cMatTrain<-cMatTest<-table(factor(c(0,0),levels=catinfo),factor(c(0,0),levels=catinfo))
|
||||
|
||||
## ====================================================================
|
||||
## Step 2: cross validation
|
||||
## ====================================================================
|
||||
|
||||
set.seed(321)
|
||||
## Iterate over partitions
|
||||
for (idx1 in 1:K){
|
||||
|
||||
# Status
|
||||
cat('Processing fold', idx1, 'of', K,'\n')
|
||||
|
||||
# idx1=1
|
||||
# Get training- and test sets
|
||||
I_train = c!=idx1 ## Creating selection vector of TRUE/FALSE
|
||||
I_test = !I_train
|
||||
|
||||
Xtrain = X[I_train,]
|
||||
ytrain = y[I_train]
|
||||
Xtest = X[I_test,]
|
||||
ytest = y[I_test]
|
||||
|
||||
# Z-score standardisation
|
||||
source("standardise.R")
|
||||
list2env(standardise(Xtrain,Xtest,type="cs"),.GlobalEnv)
|
||||
## Outputs XtrainSt and XtestSt
|
||||
## Standardised by centering and scaling
|
||||
|
||||
|
||||
## Model matrices for glmnet
|
||||
# Xmat.train<-model.matrix(~.-1,XtrainSt)
|
||||
# Xmat.test<-model.matrix(~.-1,XtestSt)
|
||||
|
||||
# Weights
|
||||
ytrain_weight<-as.vector(1 - (table(ytrain)[ytrain] / length(ytrain)))
|
||||
|
||||
# Fit regularized linear regression model
|
||||
mod<-glm(ytrain~.,
|
||||
data=XtrainSt,
|
||||
weights = ytrain_weight,
|
||||
family = stats::quasibinomial(link = "logit"))
|
||||
|
||||
# Keep coefficients for plot
|
||||
B[[idx1]] <- mod
|
||||
|
||||
# Predict
|
||||
yhatTrainProb<-predict(mod,
|
||||
newdata = XtrainSt,
|
||||
type = "response"
|
||||
)
|
||||
|
||||
yhatTestProb<-predict(mod,
|
||||
newdata = XtestSt,
|
||||
type = "response"
|
||||
)
|
||||
|
||||
# Compute training and test error
|
||||
yhatTrain = round(yhatTrainProb)
|
||||
yhatTest = round(yhatTestProb)
|
||||
|
||||
# Make predictions categorical again (instead of 0/1 coding)
|
||||
yhatTrainCat = factor(round(yhatTrainProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
yhatTestCat = factor(round(yhatTestProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
# Compute confusion matrices
|
||||
cMatTrain = cMatTrain + table(ytrain,yhatTrainCat)
|
||||
cMatTest = cMatTest + table(ytest,yhatTestCat)
|
||||
|
||||
# AUROC
|
||||
suppressMessages(
|
||||
auc_train[idx1]<-auc(ytrain, yhatTrainCat))
|
||||
suppressMessages(
|
||||
auc_test [idx1]<-auc(ytest, yhatTestCat))
|
||||
}
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: creating table of coefficients for inference
|
||||
## ====================================================================
|
||||
|
||||
confs<-lapply(1:K, function(x){
|
||||
cs<-exp(confint(B[[x]]))
|
||||
lo<-cs[,1]
|
||||
hi<-cs[,2]
|
||||
return(list(lo=lo,hi=hi))
|
||||
})
|
||||
|
||||
coefs<-apply(Reduce('cbind', lapply(B,"[[", "coefficients")),1,mean)
|
||||
|
||||
unlist(strsplit(names(B[[1]]$coefficients),2))
|
||||
|
||||
var.labels<-c(var.labels,'(Intercept)'="Intercept")
|
||||
|
||||
ds<-tibble(name=var.labels[match(unlist(strsplit(names(coefs),2)), names(var.labels))],
|
||||
coefs=coefs,
|
||||
OR=round(exp(coefs),3),
|
||||
CIs=paste0("(",
|
||||
round(apply(Reduce('cbind', lapply(confs,"[[", "lo")),1,mean),3),
|
||||
",",
|
||||
round(apply(Reduce('cbind', lapply(confs,"[[", "hi")),1,mean),3),
|
||||
")")
|
||||
)
|
||||
|
||||
#
|
||||
full_coef_tbl<-ds%>%
|
||||
gt(rowname_col = list(age~"Age"))
|
||||
#
|
||||
full_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: plotting classification performance
|
||||
## ====================================================================
|
||||
|
||||
full_cfm<-confusionMatrix(cMatTest)
|
||||
full_auc_sum<-summary(auc_test)
|
||||
|
||||
643
1 PA Decline/archive/generation_1/assigndata.csv
Normal file
|
|
@ -0,0 +1,643 @@
|
|||
"pase_0","age","sex","civil","smoke_ever","rtreat","alc","afli","hypertension","diabetes","mrs_0","nihss_c","thrombolysis","pad","thrombechtomy","ami","tci","pase_drop","pase_6","mrs_1","mfi_gen_1","mdi_1","who5_score_1"
|
||||
"377.44","76","male","partner","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","yes","no","no","260.52","0","10","6","84"
|
||||
"277","49","male","partner","never","Placebo","guideline","no","no","no","0","4","no","no","no","no","no","no","113.11","2","12","11","64"
|
||||
"192.4","43","male","alone","never","Placebo","guideline","no","yes","yes","0","2","yes","no","no","no","no","no","123.05","4","12","3","76"
|
||||
"30","89","female","alone","ever","Placebo","guideline","yes","no","no","0","3","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"44.14","80","male","partner","ever","Active","guideline","no","no","no","2","4","no","no","no","no","no","no","135.15","3","16","11","64"
|
||||
"128.76","72","male","partner","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"224.54","71","female","partner","ever","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","197.78","1","8","1","80"
|
||||
"100","66","female","alone","never","Active","guideline","no","no","no","0","4","no","no","yes","no","no","yes","32.36","4","17","14","52"
|
||||
"144.8","64","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","191.84","1","14","3","84"
|
||||
"136.8","64","male","partner","never","Placebo","guideline","no","yes","no","0","3","no","yes","no","no","no","yes","9.7","2","10","7","36"
|
||||
"134.33","65","female","alone","ever","Placebo","guideline","no","yes","yes","0","2","no","no","no","no","no","no","178.97","2","10","4","80"
|
||||
"118.2","63","male","partner","never","Active","guideline","no","yes","no","0","9","yes","no","no","no","no","yes","33.14","2","4","3","48"
|
||||
"99.28","62","male","partner","never","Active","more","no","yes","no","0","1","no","no","no","no","no","no","209.68","1","15","9","48"
|
||||
"101.3","73","male","partner","never","Placebo","more","no","no","no","1","16","yes","no","yes","no","no","yes","34.6","1","14","12","0"
|
||||
"75.5","59","female","alone","never","Placebo","guideline","no","no","no","0","5","no","no","no","no","no","no","123.97","2","20","22","44"
|
||||
"81","73","male","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","yes","no","no","184.4","1","16","10","44"
|
||||
"79.08","70","male","partner","never","Active","guideline","yes","no","no","0","5","yes","no","no","no","no","no","235.75","2","17","9","60"
|
||||
"27.2","83","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","81","0","6","3","68"
|
||||
"173.25","80","male","partner","ever","Active","guideline","no","yes","no","0","5","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"255.8","63","male","alone","never","Placebo","guideline","no","no","no","0","9","no","no","no","no","no","no","121.4","1","4","5","84"
|
||||
"27.2","82","male","alone","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"329.51","72","male","partner","ever","Placebo","guideline","yes","no","no","1","11","yes","no","no","no","no","no","506.35","2","11","2","80"
|
||||
"199.91","58","female","alone","ever","Active","guideline","no","yes","no","0","0","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"218.09","64","male","partner","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","117.25","0","4","1","92"
|
||||
"166.8","49","female","partner","ever","Placebo","guideline","no","no","no","0","5","no","no","no","no","no","no","183.58","0","5","6","76"
|
||||
"25","99","female","alone","ever","Placebo","guideline","yes","no","no","0","8","yes","no","no","no","no","no","8.82","2","12","14","52"
|
||||
"90","79","female","alone","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","yes","yes","no","136.4","0","16","11","96"
|
||||
"232.71","60","male","partner","never","Active","guideline","no","yes","no","0","5","no","no","no","no","no","no","228.25","2","12","9","72"
|
||||
"208.24","51","male","alone","never","Placebo","guideline","no","no","no","0","10","no","no","no","no","no","no","98.14","2","12","4","76"
|
||||
"28.11","77","male","alone","never","Placebo",NA,"yes","yes","no","0","9","no","no","no","no","no","no","8.4","4","10","14","52"
|
||||
"116","54","female","partner","never","Active","guideline","no","yes","no","0","6","no","no","no","no","no","no","110.32","0",NA,NA,"0"
|
||||
"271.5","71","female","partner","ever","Placebo","guideline","no","yes","no","0","16","yes","no","no","no","no","no","288.88","3","13","10","72"
|
||||
"155.8","67","female","alone","never","Placebo","more","no","yes","no","0","1","no","yes","no","no","no","no","207.4","0","6","0","100"
|
||||
"116.4","31","male","alone","never","Active","guideline","no","no","no","0","5","no","no","no","no","no","no","81.32","1","4","5","92"
|
||||
"88.76","72","female","partner","never","Active","guideline","yes","yes","no","1","5","no","no","no","no","no","no","126.65","1","11","8","64"
|
||||
"78.48","71","female","partner","never","Active","guideline","no","no","no","1","15","yes","no","no","no","no","no","152.22","0","4","4","80"
|
||||
"98.68","75","female","partner","ever","Active","guideline","no","no","no","0","4","no","no","no","no","no","yes","60.83","2","9","3","84"
|
||||
"183.3","78","male","partner","never","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","240.04","1","12","1","76"
|
||||
"192.5","74","male","partner","never","Active","guideline","no","no","no","0","3","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"217.82","62","female","partner","ever","Placebo","guideline","no","yes","no","1","3","yes","no","no","no","no","no","185.18","1","11","6","64"
|
||||
"144.4","86","male","partner","ever","Active","guideline","no","yes","no","0","2","yes","no","no","no","no","no","171.37","1","5","5","84"
|
||||
"85","82","male","partner","never","Active","guideline","no","yes","no","0","3","yes","no","no","no","no","yes","62.8","0","20","18","48"
|
||||
"168.87","60","female","partner","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no","no","230.14","2","15","14","40"
|
||||
"115.56","63","female","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","188.73","2","13","12","60"
|
||||
"111","53","male","partner","never","Placebo","guideline","no","no","no","0","3","yes","no","no","no","no","no","136","1","17","6","92"
|
||||
"58.53","86","female","alone","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no","no","246.47","0","14","4","52"
|
||||
"75.8","75","male","partner","never","Placebo","guideline","yes","no","yes","0","2","yes","no","no","no","no","no","108.2","2","11","14","64"
|
||||
"153.01","70","female","alone","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","228.24","2","7","3","88"
|
||||
"114.93","63","male","partner","never","Placebo","guideline","no","no","yes","0","3","no","no","no","no","no","no","188.05","2","18","5","72"
|
||||
"243.33","57","male","alone","never","Placebo",NA,"no","no","no","0","6","no","no","yes","no","no","no","199.86","3","7","5","8"
|
||||
"218.89","77","male","alone","ever","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","yes","32.09","1","5","11","88"
|
||||
"116.05","76","female","alone","ever","Active","guideline","no","no","no","0","7","no","no","no","no","no","yes","66.32","4","8","6","88"
|
||||
"126.31","65","male","partner","never","Active","guideline","yes","yes","no","0","2","yes","no","no","no","no","no","259.37",NA,NA,NA,"0"
|
||||
NA,"82","female","alone","ever","Placebo","guideline","yes","no","no","1","16","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"81.72","77","male","partner","never","Active","more","yes","yes","no","1","1","no","yes","no","no","no","yes","35.71","2",NA,NA,NA
|
||||
"155.83","63","female","alone","never","Placebo","guideline","no","no","no","0","0","no","no","no","yes","no","no","221.5","0","10","5","56"
|
||||
"136","55","male","alone","never","Placebo","guideline","no","no","no","0","7","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"267.12","53","female","partner","never","Placebo","guideline","no","no","no","0","8","yes","no","no","no","no","no","223.62","1","17","6","60"
|
||||
NA,"73","male","alone","never","Active","guideline","no","no","no","0","7","no","no","no","no","no",NA,"42.22","3","20","29","4"
|
||||
"33.4","62","female","alone","never","Active","guideline","no","no","no","1","8","no","no","no","no","no","no","212.4",NA,NA,NA,NA
|
||||
"296","60","male","partner","never","Active","guideline","no","no","no","0","12","no","no","no","no","no","no","112.82","4","8","3","92"
|
||||
"59.2","87","female","alone","never","Active","guideline","yes","yes","no","2","4","no","no","no","no","no","no","99.66","2","14","12","72"
|
||||
"278.48","74","male","alone","never","Placebo","guideline","no","no","yes","0","4","no","no","no","no","no","no","410.61","1","6","6","80"
|
||||
"448.9","54","female","alone","ever","Active","guideline","no","yes","yes","0","3","no","no","no","no","no","no","318.91","1","18","8","48"
|
||||
"114.5","69","male","partner","never","Placebo","guideline","no","yes","no","0","10","yes","no","no","yes","no","no","105.8","1","4","1","88"
|
||||
"56","67","male","partner","never","Active","guideline","no","no","no","0","4","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"292.24","63","male","partner","ever","Active","guideline","no","no","no","0","2","yes","no","no","yes","no","yes","52.5","3","4","4","96"
|
||||
"155.83","45","male","partner","ever","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","335.46","1","9","3","92"
|
||||
"106","78","male","alone","never","Active","guideline","no","no","no","0","4","no","no","no","no","no",NA,NA,"1","4","3","96"
|
||||
"114.4","52","male","partner","never","Active","guideline","no","yes","no","0","2","yes","no","no","yes","no","yes","31.4","1","19","22","44"
|
||||
"0","86","female","alone","never","Placebo","guideline","no","no","no","3","2","yes","no","no","no","no","no","35","3","4","0","88"
|
||||
"55","67","male","partner","never","Active","guideline","no","yes","no","0","7","no","yes","no","no",NA,"no","3.3","2","10","2","88"
|
||||
"0","76","male","partner","never","Active","guideline","no","yes","no","0","3","yes","no","no","yes","no",NA,NA,"1","16","15","44"
|
||||
"158.5","67","male","partner","ever","Active","guideline","no","yes","no","0","16","yes","no","no","no","no","no","242.07","1","14","4","80"
|
||||
"246.65","70","male","partner","ever","Placebo","guideline","no","yes","no","0","4","no","no","no","no",NA,"yes","0","1","10","10","72"
|
||||
"196","81","male","alone","never","Placebo","guideline","no","no","no","0","2","yes","no","no","no","no","yes","33.4","3","4","5","88"
|
||||
"249.9","62","male","partner","ever","Active","guideline","no","yes","no","0","1","yes","no","no","no","yes",NA,NA,NA,NA,NA,NA
|
||||
"61","64","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","35.4","3","17","10","72"
|
||||
"0","60","male","alone","ever","Active","guideline","no","yes","no","2","3","no","no","no","no","no",NA,NA,"4",NA,"16","52"
|
||||
"155.91","68","male","partner","never","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","158.5","1","12","12","72"
|
||||
"220.76","69","male","partner","never","Active","guideline","no","yes","no","0","3","yes","no","no","no","no","no","231.5","0","5","12","76"
|
||||
"270.4","63","male","partner","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","no","86.11","3","11","9","76"
|
||||
"268.72","45","male","alone",NA,"Active","guideline","no","no","no","0","0","no","no","no","no","no","no","245.77","1","13","2","72"
|
||||
"215.8","64","male","partner","ever","Placebo","guideline","no","no","no","0","6","yes","no","no","no","no","no","250.3","1","13","5","60"
|
||||
"187.4","51","female","partner","ever","Active","more","no","yes","no","0","4","no","no","no","no","no","no","140.61","2","16","5","80"
|
||||
"66.04","77","female","alone","ever","Active","guideline","no","no","no","0","2","yes","no","no","no","no","no","50","0","7","2","100"
|
||||
"74.97","83","male","partner","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","66.5","2","10","4","72"
|
||||
"133.6","63","male","partner",NA,"Placebo",NA,"no","yes","yes","0","2","no","no","no","no","no","no","111","1","8","0","80"
|
||||
"54.51","71","male","alone","never","Placebo","guideline","no","yes","yes","0","5","no","no","no","no","no","no","50.02","1","11","6","60"
|
||||
"327.72","57","male","alone","never","Active","more","no","no","no","0","0","yes","no","no","no","no","no","206.05","1","16","24","44"
|
||||
"198.66","81","male","partner","ever","Active","guideline","no","yes","no","1","7","yes","no","no","no","no","no","164.51","1","10","5","80"
|
||||
"138.2","76","male","alone","ever","Placebo","guideline","yes","yes","no","1","6","no","no","no","no","no","no","185.92","2","10","2","100"
|
||||
"91.7","74","male","alone","never","Placebo","guideline","no","yes","no","0","8","yes","yes","no","no","no",NA,NA,"6","8","2","80"
|
||||
"68.4","54","female","partner","never","Placebo","guideline","no","no","no","1","1","no","no","no","no","no","no","117.2","1","14","5","68"
|
||||
"137","44","male","partner","ever","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no","no","255.14","0","8","5","72"
|
||||
"214.2","64","male","partner","never","Active","guideline","no","no","no","0","17","yes","no","yes","no","no","no","176.57","2","11","20","40"
|
||||
"85.8","52","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","211","2","15","10","64"
|
||||
"216.47","48","female","partner","never","Placebo","guideline","no","yes","no","0","0","no","no","no","no","no","no","255.92","1","10","5","76"
|
||||
"257.32","85","male","partner","never","Placebo","guideline","yes","yes","no","0","6","yes","no","no","no","no","no","136","3","9","4","80"
|
||||
"27.2","61","male","alone","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","no","no","no","65","1","13","1","68"
|
||||
"189.71","49","female","alone","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no","yes","52.2","2","20","18","24"
|
||||
"197","63","male","alone","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","231.73","2","15","11","52"
|
||||
"116","70","male","partner","never","Active","more","no","no","no","0","4","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"177.4","64","male","partner","ever","Active","guideline","no","yes","no","0","0","no","no","no","no","no","no","205","2","16","9","80"
|
||||
"88.2","63","male","partner","never","Placebo","guideline","no","no","no","1","28","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"50","85","female","alone","never","Active","guideline","yes","no","no","0","27","yes","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"114.4","83","male","alone","ever","Active","guideline","no","no","yes","0","7","no","no","no","yes","no","no","106.8","1","8","4","80"
|
||||
"171.96","75","female","partner","never","Placebo","guideline","no","yes","no","0","1","yes","no","no","no","no","no","95.8","1","14","9","52"
|
||||
"100","72","male","partner","never","Active","guideline","no","yes","no","0","4","yes","no","yes","no","no","yes","52.53","3","4","6","92"
|
||||
"195.92","64","female","alone","ever","Placebo","guideline","no","no","no","0","2","yes","no","no","no","no","no","158.51","1","6","5","80"
|
||||
"180.22","69","male","partner","never","Placebo","guideline","yes","no","no","0","5","yes","no","no","no","no","no","190","1","4","0","100"
|
||||
"136.12","65","male","partner","never","Active","guideline","no","yes","no","0","17","yes","no","yes","no","no","no","199.16","2","16","9","68"
|
||||
NA,"73","male","alone","never","Placebo","guideline","no","yes","yes",NA,NA,"no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"22.2","66","male","partner","ever","Active","guideline","yes","yes","yes","1","4","no","no","no","no","no","no","64.11","3","14","8","84"
|
||||
"29.73","79","male","alone","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","31.4","1","16","4","48"
|
||||
"216.86","69","male","partner","ever","Active","guideline","yes","no","no","1","6","yes","no","yes","no","no","no","272.43","1","6","3","76"
|
||||
"226.8","55","male","partner","never","Active","guideline","no","no","yes","0","0","no","no","no","no","no","no","142.4","1","10","6","92"
|
||||
"166","81","male","alone","never","Active","more","no","no","no","0","3","yes","no","no","no","yes","no","99.7","4","4","5","92"
|
||||
"131.8","69","male","alone","never","Placebo","guideline","no","yes","no","0","16","yes","no","yes","no","no","yes","8.82","4","17","5","100"
|
||||
"161.27","53","female","partner","ever","Placebo","guideline","yes","no","no","0","2","no","no","no","no","no","no","302.77","0","16","8","80"
|
||||
"256","74","male","partner","ever","Active","guideline","yes","yes","no","0","0","no","no","no","no","no","no","311.8","1","4","1","100"
|
||||
"238.4","62","male","partner","ever","Active","more","no","no","no","0","12","yes","no","no","no","no","no","308.93","1","12","7","64"
|
||||
"252.8","51","male","partner","never","Placebo","guideline","no","no","no","0","5","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"84.6","45","male","partner","never","Placebo","guideline","no","yes","yes","0","3","no","no","no","no","no","yes","73.61","2","16","14","60"
|
||||
"121.4","54","male","partner","never","Placebo","more","no","no","no","0","3","no","no","no","no","no",NA,NA,"0","20","29","16"
|
||||
"117.8","87","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","131.8","2","11","4","72"
|
||||
"113.21","79","female","partner","ever","Active","more","no","no","no","0","5","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"82.13","69","male",NA,"never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","254.51","0","12","2","76"
|
||||
"30","62","male","partner","never","Placebo","more","no","no","no","0","2","yes","no","no","no","yes","no","95","2","10","13","60"
|
||||
"241.3","45","male","partner","ever","Placebo","guideline","no","no","no","0","32","yes","no","yes","no","no","no","356.97","2","11","14","80"
|
||||
"157.4","83","female","partner","ever","Active","guideline","no","no","no","1","4","no","no","no","no","no","no","175.01","3","13",NA,"52"
|
||||
"260.5","50","male","partner","ever","Active","guideline","no","no","no","0","4","no","no","no","no","no","no","238.05","1","11","2","76"
|
||||
"289","63","male","partner","never","Placebo","more","yes","no","no","0","6","yes","no","no","no","no","no","253.4","1","14","10","64"
|
||||
"30","77","female","partner","ever","Active","guideline","no","no","no","3","7","no","no","no","no","no","no","31.72","4","15","9","76"
|
||||
"25","77","male","alone","never","Active","guideline","yes","yes","yes","2","2","no","no","no","no","no","no","0","2","8","6","92"
|
||||
"130.56","37","female","alone","ever","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","288.72","1","16","13","32"
|
||||
"59.8","81","male","alone","never","Active","more","no","yes","no","0","2","no","no","no","no","no","no","154.84","1","4","0","100"
|
||||
"116.93","71","male","partner","ever","Active","guideline","no","yes","no","0","3","yes","no","no","no","no","no","89.4","2","12","1","100"
|
||||
"286.47","50","male","partner","never","Active","guideline","no","no","no","0","3","yes","no","no","no","no","no","306.55","1","12","5","56"
|
||||
"117.22","72","female","partner","ever","Active","guideline","no","yes","no","1","4","yes","no","no","no","yes","no","196.4","1","9","3","68"
|
||||
"27.2","80","female","alone","never","Active","guideline","no","no","no","1","14","no","no","no","no","no","no","4.84","4","20","14","64"
|
||||
"211.4","51","male","partner","ever","Active","guideline","no","no","no","0","1","yes","no","no","no","no","no","288.4","2","14","11","52"
|
||||
"100","73","female","partner","ever","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","102.89","2","15","19","56"
|
||||
"298.98","52","male","partner","ever","Placebo","guideline","no","yes","no","1","7","yes","no","no","no","no","no","149.05","1","11","7","64"
|
||||
"75.8","64","male","partner","never","Placebo","more","no","no","no","0","4","no","no","no","no","no","no","224.32","1","8","10","88"
|
||||
"25","77","male","partner","never","Active","more","no","yes","no","2","6","no","yes","no","no","no","no","116.59","3","13","16","60"
|
||||
"90","58","male","alone","never","Active","guideline","yes","yes","yes","0","0","no","no","no","no","no","yes","55","1","15","13","60"
|
||||
"146.93","74","male","partner","never","Placebo","more","no","yes","no","0","5","no","no","no","no","no","no","135.1","2","15","5","72"
|
||||
"131.8","69","male","partner","never","Placebo","guideline","yes","no","no","2","3","no","no","no","no","no","no","167.45","2","5","1","92"
|
||||
"104.16","65","female","partner","ever","Placebo","guideline","yes","yes","no","0","12","yes","no","yes","yes","no","no","156.58","1","18","16","44"
|
||||
"54.51","85","male","partner","never","Placebo","more","no","yes","yes","0","2","no","no","no","no","no",NA,NA,"2","20","14","16"
|
||||
"50","81","male","alone","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","115.13","1","14","6","72"
|
||||
"297.4","71","male","partner","never","Active","guideline","no","no","no","1","5","no","no","no","no","no","no","169.4","2","9","5","88"
|
||||
"131.8","67","male","partner","never","Placebo","guideline","no","yes","yes","0","5","yes","no","no","no","no","no","266.23","0","10","2","84"
|
||||
"190","61","male","alone","ever","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","271.37","1","10","3","88"
|
||||
"191.81","58","male","alone","never","Active","more","no","no","no","0","1","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"248.3","52","male","alone","never","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","161.8","1","14","6","64"
|
||||
"348.97","49","male","partner","ever","Placebo","guideline","no","no","no","1","1","yes","no","no","no","no","no","255.66","0","7","3","80"
|
||||
"252","60","male","partner","ever","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","226.08","2","14","4","68"
|
||||
"85","67","male","partner","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","no","no","no","225.11","1","4","0","92"
|
||||
"161","49","male","partner","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","259.5","1","5","6","84"
|
||||
"87.47","45","male","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","166.87","1","4","3","96"
|
||||
"167.8","83","male","partner","never","Active","guideline","yes","yes","no","0","5","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"86.72","72","female","partner","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","109.25","1","10","3","64"
|
||||
"116.75","67","male","alone","never","Placebo","guideline","no","yes","yes","0","4","no","no","no","yes","no","yes","62.36","3","17","15","52"
|
||||
"183.91","78","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","yes","72.91","1","5","0","92"
|
||||
"310.28","63","male","partner","never","Placebo","guideline","no","yes","no","0","13","yes","no","no","no","no","no","184.72","0","6","12","72"
|
||||
"215.8","51","female","partner","ever","Active","guideline","yes","no","no","0","2","no","no","no","no","no",NA,NA,"2","17","20","48"
|
||||
"91","72","female","partner","never","Active","guideline","no","no","no","1","7","yes","no","no","no","no","no","96.4","0","10","3","88"
|
||||
"221","44","female","alone","never","Active","guideline","no","no","yes","0","3","yes","no","no","no","no","no","146","2","18","17","44"
|
||||
"49.73","66","female","partner","never","Placebo","more","yes","no","no","0","18","yes","no","yes","no","no","no","87.09","2","12","13","80"
|
||||
"184.4","48","female","partner","never","Active","guideline","no","no","no","0","5","yes","no","yes","no","no","no","146.45","1","14","19","60"
|
||||
"64.15","76","female","partner","never","Active","guideline","yes","yes","no","2","17","yes","no","yes","no","no","no","71.48","2","18","20","48"
|
||||
"132.12","76","female","alone","ever","Active","guideline","no","yes","no","0","3","no","no","no","no","no","yes","70.52","0","9","1","88"
|
||||
"190.67","54","female","partner","never","Placebo","guideline","no","yes","no","0","4","no","no","no","no","no","no","132.56","1","12","5","56"
|
||||
"58.4","83","female","partner","ever","Active","guideline","no","yes","no","0","10","yes","no","no","no","no","no","19.45","4","11","7","88"
|
||||
"316.76","44","male","partner","never","Placebo","guideline","no","yes","no","0","4","no","no","no","no","no","no","281.83","1","4","1","100"
|
||||
NA,"84","female","partner","ever","Active","guideline","no","yes","yes","0","2","no","no","no","no","no",NA,"58.4","2","12","7","80"
|
||||
"146.9","37","male","partner","ever","Active","guideline","no","no","no","0","2","yes","no","no","no","no","no","227.83","1","14","9","72"
|
||||
"152.4","69","male","partner","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","88.3","1","11","18","68"
|
||||
"212.4","81","male","partner","never","Placebo","guideline","no","no","no","1","3","no","no","no","no","no","no","108.34","0","10","1","92"
|
||||
"237.2","80","male","partner","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","322.4","1","7","4","84"
|
||||
"85","75","female","alone","never","Placebo","guideline","no","yes","no","0","7","no","no","no","no","no","yes","60.71","2","14","12","88"
|
||||
"106.52","84","male","partner","never","Active","more","yes","no","no","0","3","no","no","no","no","no","no","207.86","2","12","5","76"
|
||||
"221","57","female","alone","never","Placebo","guideline","no","yes","no","0","11","yes","no","no","yes","no","no","228.72","3","18","7","28"
|
||||
"25.8","48","male","partner","ever","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","281.41","0","9","3","68"
|
||||
"30","87","female","alone","never","Active","guideline","no","yes","no","1","2","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"179.73","57","female","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","239.97","1","17","15","36"
|
||||
"313.12","46","male","partner","ever","Placebo","guideline","yes","no","yes","0","1","yes","no","no","no","no","no","356.46","1","8","7","72"
|
||||
"60","65","female","partner","ever","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","92.31","1","12","5","72"
|
||||
"88.77","61","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","263.98","2","10","12","84"
|
||||
"202.72","45","female","partner","ever","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no","no","247.93","1","9","5","88"
|
||||
"147.05","76","male","alone","never","Placebo","guideline","yes","yes","no","0","2","yes","yes","no","yes","no","no","245.8","2","10","13","80"
|
||||
"172.2","63","male","alone","never","Placebo","guideline","yes","no","no","0","19","no","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"282.7","48","male","partner","ever","Active","guideline","no","no","no","0","18","yes","no","yes","no","no","yes","67.27","3","20","14","20"
|
||||
"254.4","64","female","partner","never","Placebo","guideline","no","no","no","0","11","yes","no","no","no","no","no","125.18","4","11","1","96"
|
||||
"149.71","64","female","alone","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no",NA,NA,"0","4","0","96"
|
||||
"141.8","60","male","alone","never","Active","guideline","no","no","yes","1","6","no","no","no","no","no","no","118.06","4","7","2","100"
|
||||
"256","54","male","partner","never","Active","guideline","no","yes","no","0","5","yes","no","no","no","no","no","158.43","0","5","7","72"
|
||||
"163.55","68","male","partner","never","Active","guideline","yes","yes","no","0","6","no","no","no","yes","no","no","253.27","1","16","3","76"
|
||||
"40","66","female","partner","ever","Placebo","guideline","no","yes","no","0","4","yes","no","no","no","no","no","85","0","9","5","64"
|
||||
"37.84","84","female","alone","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","98.13","1","12","2","80"
|
||||
"106.2","72","male","partner","ever","Placebo","guideline","yes","yes","no","0","11","yes","no","no","no","no","no","93.5","1","12","7","40"
|
||||
"162.15","33","female","alone","ever","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","yes","56.87","1","19","15","44"
|
||||
NA,"70","male","partner","ever","Active","guideline","no","no","no","0","19","yes","no","no","no","no",NA,"62.87","3","11","7","84"
|
||||
"52.36","88","male","alone","ever","Active","more","yes","no","no","0","12","no","no","no","no","no","no","25.8","3","7","4","72"
|
||||
"191.8","84","male","partner","ever","Placebo","guideline","no","no","no","1","1","no","no","no","no","no","yes","64.6","4","20","19","4"
|
||||
"75.8","45","male","partner","never","Placebo","guideline","no","no","no","0","3","yes","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"252","74","male","partner","never","Placebo","guideline","no","yes","no","0","0","no","yes","no","no","no","no","224.64","0","8","3","80"
|
||||
"195.5","63","male","alone","never","Active","guideline","no","no","no","0","5","no","no","no","no","no","no","175.58","3","11","5","80"
|
||||
"171.4","62","male","partner","never","Placebo","guideline","no","no","yes","0","9","no","no","no","no","no","no","214.9","3","10","3","84"
|
||||
"131.29","67","female","partner","never","Active","guideline","no","no","no","0","3","yes","no","no","no","no","no","243.92","1","8","5","76"
|
||||
"110.8","66","male","alone","never","Placebo","guideline","no","yes","no","0","3","yes","no","no","no","no","yes","38.07","2",NA,NA,NA
|
||||
"0","65","male","alone","never","Placebo","guideline","no","yes","yes","3",NA,"no","no","no","yes","no","no","25","4","10","2","72"
|
||||
NA,"63","male","alone","never","Active","guideline","no","yes","no","0","16","no","yes","no","yes",NA,NA,"21.15","5","16",NA,"20"
|
||||
"222.8","58","male","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","471.58","2","12","6","80"
|
||||
"204.49","79","female","partner","ever","Placebo","guideline","no","yes","no","0","3","yes","no","no","no","no",NA,NA,"0","7","1","96"
|
||||
"191","60","male","alone","never","Active","guideline","no","yes","no","1","3","yes","no","no","no","no","no","141.08","2","4","1","96"
|
||||
"184.47","54","female","partner","ever","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","277.76","2","15","12","52"
|
||||
"114.4","65","female","partner","ever","Active","guideline","no","no","no","0","19","yes","no","yes","no","no",NA,NA,NA,NA,NA,NA
|
||||
NA,"52","male",NA,NA,"Placebo",NA,NA,NA,"no","0","10","no","no","no","no",NA,NA,NA,NA,NA,NA,NA
|
||||
"91.98","77","female","partner","never","Active","guideline","yes","yes","no","0","0","no","no","no","yes","no","yes","56.35","2","9","24","40"
|
||||
"53.11","72","female","alone",NA,"Placebo","guideline","no","no","no","0","4","yes","no","no","no","no","no","297.5","1","4","0","100"
|
||||
"161","61","male","partner","never","Placebo","guideline","yes","yes","no","0","1","no","no","no","no","no","no","140.62","0","8","2","68"
|
||||
"75","62","female","partner","never","Placebo",NA,"no","no","no","0","24","no","no","no","no","no","no","27.09","4","14","10","64"
|
||||
"143.2","66","female","partner","ever","Placebo","guideline","no","no","no","0","9","yes","no","no","no","yes","no","111.4","2","13","1","88"
|
||||
"61.72","50","male","alone","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no",NA,NA,"2","12","17","60"
|
||||
"33.4","82","female","partner","never","Placebo","guideline","no","yes","no","0","19","no","no","no","no","no",NA,NA,"4","15","28","4"
|
||||
"75","70","female","partner","ever","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","93.14","1",NA,"5","76"
|
||||
"111","69","male","partner",NA,"Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","yes","58.4","1","7","3","84"
|
||||
"145","58","male","partner","ever","Placebo","guideline","yes","no","no","0","14","no","no","no","no","no","no","276.47","2","10","7","44"
|
||||
"52.2","72","female","alone","never","Active","guideline","no","no","no","0","4","yes","no","no","no","no","no","31.4","1","4","0","100"
|
||||
"141.2","79","male","partner","ever","Placebo","guideline","no","no","no","0","4","yes","no","no","no","no","no","107.3","2","12","13","72"
|
||||
"144.4","79","male","partner","ever","Placebo","guideline","no","no","no","2","9","no","no","no","no","no",NA,NA,"6","18","11","40"
|
||||
"65","67","male","alone","never","Placebo","guideline","no","yes","yes","2","2","no","no","no","no","no","no","97.13","2","16","7","56"
|
||||
"110.8","87","male","partner","never","Placebo","guideline","no","no","no","0","4","yes","no","no","no","no","yes","33.4","1","10","5","68"
|
||||
"131.8","67","male","partner","never","Placebo","guideline","yes","yes","no","2","3","yes","no","no","yes","no","yes","70.8","0","7","4","76"
|
||||
"52.2","19","female","alone","never","Placebo","guideline","no","no","no","0","19","yes","no","yes","no","no","no","78.85","1","8","3","84"
|
||||
"106.8","83","female","alone","ever","Active","guideline","no","yes","no","3","16","yes","no","no","no","no","yes","27.2","3",NA,NA,NA
|
||||
"27.53","72","female","alone","never","Placebo","guideline","no","yes","no","3","1","yes","no","no","no","no","no","39.17","1","14","3","64"
|
||||
"278.4","72","male","partner","ever","Active","guideline","yes","yes","yes","0","4","yes","no","no","no","no","yes","65","2","6","3","84"
|
||||
"209.37","76","male","partner","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","161.8","2","11","2","100"
|
||||
"17.22","83","female","alone","never","Active","guideline","no","yes","no","3","2","no","no","no","no","no","no","8.4","3","12","9","72"
|
||||
"52.2","91","female","alone","ever","Placebo","guideline","no","yes","no","1","5","no","no","no","no","no","no","62.92","2","12","6","72"
|
||||
"71.4","67","male","partner","never","Placebo","guideline","no","no","no","0","5","yes","no","no","no","no","no","88.43","1","10","3","88"
|
||||
"144.4","72","male","partner","never","Active","guideline","no","no","no","1","20","yes","no","yes","no","no",NA,NA,"6",NA,NA,NA
|
||||
"109.25","89","male","partner","ever","Active","guideline","yes","no","no","0","3","yes","no","no","no","no","yes","33.4","2","11","4","84"
|
||||
"95.12","64","male","alone","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","85.82","1","15","16","60"
|
||||
"146","57","female","alone","never","Active","guideline","no","no","no","0","7","no","no","no","no","no","no","252.8","1","10","3","80"
|
||||
"179.2","80","male","partner","never","Active","guideline","no","yes","no","0","8","no","no","no","no","no","no","86","2","13",NA,"48"
|
||||
"249.9","76","male","partner","ever","Active","guideline","no","no","no","0","3","yes","no","no","no","no","no","195.8","1","7","2","100"
|
||||
"241","57","male","partner","never","Placebo","guideline","no","no","no","0","8","no","no","yes","no","no","no","171","0","4","1","92"
|
||||
"186.8","60","male","alone","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","174.18","2","11","7","52"
|
||||
"163.09","81","female","alone","never","Active","guideline","no","yes","no","0","5","yes","no","no","no","no","no","121","1","12","2","88"
|
||||
"152.53","48","male","alone","never","Placebo","guideline","no","no","no","0","5","no","no","no","no","no","no","128.76","3","15","16","52"
|
||||
"98.22","86","male","alone","never","Active","guideline","no","yes","yes","2","3","yes","no","no","no","no","yes","41.18","2","12","34","24"
|
||||
"50.8","74","male",NA,NA,"Active",NA,NA,NA,"no","0","1","no","no","no","no",NA,NA,NA,NA,NA,NA,NA
|
||||
"84.62","67","female","partner","ever","Placebo","guideline","no","no","no","0","6","yes","no","no","no","no","no","98.65","0","8","6","92"
|
||||
"254.15","64","male","partner","never","Placebo","guideline","no","no","yes","0","5","yes","no","no","no","no","no","107.31","2","7","2","88"
|
||||
"241.4","61","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","117.4","2","9","5","60"
|
||||
"291.47","58","male","partner","never","Placebo","more","no","no","no","0","7","no","no","no","no","no","no","484.8","1","9","3","88"
|
||||
"27.2","83","male","partner","never","Placebo","guideline","no","yes","no","1","1","no","no","no","no","no","no","121.8","2","13","2","88"
|
||||
"208","68","male","partner","never","Placebo","guideline","no","no","yes","0","2","yes","no","no","yes","no","no","207.5","0","7","4","92"
|
||||
"178.4","53","male","alone","never","Active","more","no","no","no","0","14","no","no","no","no","no","yes","63.07","4","12","10","32"
|
||||
NA,"52","male","partner","never","Active","guideline","no","yes","no","0","5","no","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"197.3","84","female","alone","ever","Active","guideline","yes","yes","no","0","0","no","no","no","no","no","no","80","1","13","7","64"
|
||||
"354.59","63","male","partner","never","Placebo","guideline","yes","no","no","0","15","yes","no","no","no","no","no","312","1","6","2","88"
|
||||
"111","58","male","alone","ever","Placebo","guideline","no","no","no","0","4","no","no","no","no","no","no","239.54","2","10","1","100"
|
||||
"30","89","female","alone","never","Placebo","more","no","yes","no","0",NA,"no","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"78.33","84","female","alone","never","Active","guideline","no","yes","no","2","0","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"14.01","79","male","partner","never","Active","guideline","yes","no","no","2","6","no","yes","no","no","no","no","135.42","4","7","0","100"
|
||||
"95.8","86","female","alone","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","yes","50.8","2","15","14","68"
|
||||
"75.39","73","male","partner","ever","Placebo","guideline","yes","yes","no","1","8","no","no","no","no","no",NA,NA,"1","4","2","100"
|
||||
"170.25","69","female","partner","ever","Placebo","guideline","no","no","no","0","4","yes","no","no","no","yes","no","193.3","0","12","1","92"
|
||||
"61","70","male","partner","never","Placebo","guideline","no","no","no","0","3","yes","no","yes","no","no","no","220.8","0","6","6","80"
|
||||
"236.8","49","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","227.05","1","9","7","76"
|
||||
"163.2","53","male","partner","never","Active","guideline","no","no","no","0","5","no","no","no","no","no","no","179.06","1","13","14","68"
|
||||
"29.51","77","female","alone","never","Active","guideline","yes","yes","no","0","3","yes","no","no","no","no","no","61.76","0","10","3","76"
|
||||
"206.4","51","male","partner","never","Placebo","guideline","no","no","yes","0","7","yes","no","no","yes","no",NA,NA,"2","17","30","20"
|
||||
"116","74","male","partner","never","Placebo","guideline","yes","yes","no","0","7","yes","no","no","yes","no","no","123.81","0","4","1","84"
|
||||
"343.17","58","male","partner","ever","Placebo","guideline","no","no","no","0","0","no","no","no","no","no","no","403","1","10","3","80"
|
||||
"107.81","79","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","162.87","1","16","5","68"
|
||||
"231.4","48","male","partner","never","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","210.16","1","13","4","60"
|
||||
"177.4","78","male","partner","ever","Placebo","guideline","no","no","no","0","4","no","no","no","no","no","no","137.15","0","6","10","64"
|
||||
"126.64","52","male","partner","ever","Placebo","guideline","no","yes","no","0","4","no","no","no","no","no","no","271.15","2","6","2","100"
|
||||
"69.36","78","female","alone","never","Active","guideline","no","no","no","0","5","yes","no","no","no","no","no","128.04","1","20","23","32"
|
||||
"107.52","78","male","partner","never","Placebo","more","yes","yes","no","2","2","no","no","no","no","no","no","88.78","2","14","5","68"
|
||||
"60","69","male","partner","never","Active","guideline","no","yes","yes","0","8","yes","no","no","yes","no","no","107.16","1","13","10","60"
|
||||
"169.4","60","female","alone","ever","Placebo","guideline","no","no","yes","0","3","no","no","no","no","no","no","196.12","2","5","6","76"
|
||||
"106","68","male","partner","never","Active","guideline","yes","no","no","0","12","yes","no","yes","no","no","no","127","0","6","0","88"
|
||||
"132.5","68","female","partner","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","131.16","0","4","0","92"
|
||||
"141.32","73","female","alone","ever","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","106.55","2","16","8","48"
|
||||
"247.23","37","female","partner","never","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","172.14","1",NA,"5","64"
|
||||
"71.72","44","male","alone","never","Active","guideline","no","no","no","0","12","yes","no","yes","no","no","no","50.8","2","19","24","16"
|
||||
"217.05","79","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","147.74","2","10","3","60"
|
||||
"140.75","56","male","partner","ever","Placebo","guideline","no","yes","no","0","5","no","no","no","no","no","no","120.56","0","12","4","76"
|
||||
"95.8","84","female","alone","ever","Active","guideline","no","yes","no","0","3","no","no","no","no","yes",NA,NA,"0","12","50","100"
|
||||
"140.65","73","male","partner","never","Active","guideline","no","no","no","0","2","yes","no","no","no","no","no","311.77","1","7","6","80"
|
||||
"2.2","71","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","50.8","2","11","10","84"
|
||||
"56.4","67","male","partner","ever","Active","guideline","yes","no","no","1","2","no","no","no","no","no","no","103.12","2","9","4","84"
|
||||
"58.81","80","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","yes",NA,NA,NA,"3","18","29","8"
|
||||
"77","77","female","partner",NA,"Placebo","guideline","no","yes","no","0","9","yes","yes","no","yes","no","no","100","1","12","11","80"
|
||||
"188.8","49","female","partner","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","no","78.65","1","12","4","76"
|
||||
"163.2","63","female","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","251.54","2","14","20","56"
|
||||
"0","88","female","partner","ever","Placebo","guideline","no","yes","no","0","2","yes","no","no","yes","no","no","25","0","7","0","96"
|
||||
"50","86","female","alone","ever","Placebo","guideline","no","no","no","2","4","no","no","no","no","no","no","52.2","2","13","5","72"
|
||||
"269.9","67","female","partner","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","no","111.1","2","12","10","64"
|
||||
"170.72","75","male","alone","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","190.12","1","6","2","92"
|
||||
"70","79","female","alone","never","Active","guideline","no","no","no","0","5","no","no","no","no","no","no","55","3","17","13","48"
|
||||
"143.92","80","female","alone","never","Placebo","guideline","no","no","no","0",NA,"no","no","no","yes","no","no","238.43","0","4","0","96"
|
||||
"338.91","68","male","partner","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","241.05","1","5","4","88"
|
||||
"50.8","72","male","partner","ever","Active","guideline","no","no","yes","1","22","yes","no","no","no","no","no","44.4","4","6","9","88"
|
||||
"80.75","69","female","partner","ever","Placebo","guideline","no","yes","no","0","0","no","no","no","no","no","no","161.07","0","6","0","96"
|
||||
"25","97","female","alone",NA,"Active","guideline","yes","yes","no","2","24","no","no","no","no","no",NA,NA,"5",NA,NA,"0"
|
||||
"277.11","54","male","partner","never","Placebo","guideline","no","no","no","0","3","yes","no","no","no","no",NA,NA,"0","14","11","36"
|
||||
"112.4","47","female","partner","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","yes","52.2","0",NA,"3","100"
|
||||
"105","64","female","partner","never","Active",NA,"yes","no","no","0","23","no","no","yes","no","no","no","133.37","4","7","1","92"
|
||||
"181.12","54","female","partner","never","Placebo","guideline","no","no","no","2","5","yes","no","no","no","no","no","158.84","2","13","1","68"
|
||||
"27.31","52","male","alone","never","Placebo","guideline","no","yes","no","1","2","no","no","no","no","no","no","151.72","2","7","8","52"
|
||||
"37.8","76","female","alone","never","Placebo","guideline","no","yes","yes","0","4","no","yes","no","no","no","no","25","1","12","7","56"
|
||||
"128.76","79","male","partner",NA,"Active","guideline","no","no","no","0","2","no","no","no","yes","no","no","320.85","2","4","2","92"
|
||||
"152.03","71","female","partner","ever","Active","guideline","no","yes","no","0","7","yes","no","no","no","no","no","216.55","1","7","8","100"
|
||||
"55","66","male","partner","never","Active","guideline","no","yes","no","0","20","yes","no","yes","yes","no","no","139.51","1","11","7","64"
|
||||
"80.25","80","male","partner","never","Placebo","guideline","yes","yes","no","2","9","no","no","no","no","no",NA,NA,"6","6","13","32"
|
||||
"50","72","male","partner","never","Placebo","more","no","no","no","0","2","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"188.47","70","male","partner","never","Active","guideline","no","yes","yes","0","0","no","yes","no","yes","no","no","158.89","1",NA,"0","96"
|
||||
"256.9","64","female","partner","ever","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","297.6","0","7","1","100"
|
||||
"300.72","57","male","partner","ever","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","279.93","0","4","1","100"
|
||||
"115.82","77","male","partner","ever","Placebo","guideline","yes","yes","no","1","9","yes","no","no","no","no","no","170.33","4","9","8","76"
|
||||
"156.31","65","female","alone","never","Active","guideline","no","yes","no","0","6","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"50","73","male","alone","never","Placebo","guideline","no","no","no","2","0","no","no","no","no","no","no","27.2","1","19","20","28"
|
||||
"27.2","85","female","alone","ever","Active","guideline","no","no","no","1","1","no","no","no","no","no",NA,NA,"1","19","26","28"
|
||||
NA,"79","female","alone","never","Placebo","guideline","yes","no","no",NA,"9","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"129.22","75","male","partner","never","Placebo","guideline","no","no","no","0","18","no","no","yes","yes","no",NA,NA,"6","15","26","24"
|
||||
"82.22","75","female","partner","ever","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","139.68","2","16","10","76"
|
||||
"134.59","70","female","alone","ever","Active","guideline","no","no","yes","0","7","yes","no","no","no","yes","no","83.16","1","13","18","56"
|
||||
"117","70","male","partner","never","Placebo","guideline","yes","no","no","0","5","no","no","no","no","no","no","101.82","2","13","3","0"
|
||||
"99.48","82","male","alone","never","Placebo","guideline","no","no","no","0","4","no","yes","no","no","no","no","98.22","0","14","8","72"
|
||||
"366.68","56","male",NA,NA,"Active",NA,NA,NA,"no","0","3","no","no","no","no",NA,"no","492.38","2","5","1","96"
|
||||
"76.4","84","female","alone","ever","Placebo","guideline","no","yes","yes","0","0","no","no","no","no","no","no","56.4","1","16","7","68"
|
||||
"95.75","69","female","alone","ever","Active","guideline","no","yes","no","0","13","yes","no","no","no","no","no","82.09","4","8","3","88"
|
||||
"160.56","67","male","partner","never","Active","more","no","no","no","0","2","no","no","no","no","yes","no","393.48","2","17","9","72"
|
||||
"162.4","59","male","partner","ever","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","249.67","1","4","1","88"
|
||||
"151","69","male","partner","never","Placebo","guideline","no","yes","no","0","1","yes","no","yes","no","no","no","254.38","1","13","11","56"
|
||||
"98.2","40","male","partner","never","Placebo","more",NA,"yes","no","0","2","yes","no","no","no","no","no","315.11","0","7","9","80"
|
||||
"168.15","72","male","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","136","1","12","8","68"
|
||||
"111.8","73","male","partner","ever","Placebo","guideline","no","yes","yes","0","1","no","no","no","no","no","no","121","1","10","3","88"
|
||||
"179.23","50","male","partner","ever","Placebo","guideline","no","no","no","0","0","no","no","no","no","no","no","336.27","0","5","0","92"
|
||||
"107","44","female","alone","never","Placebo","guideline","no","yes","yes","1","5","no","no","no","no","no","yes","70","1","12","6","68"
|
||||
"249.5","72","male","partner","never","Placebo","guideline","yes","yes","no","0","5","no","no","no","no","no","yes","58.4","2","10","18","48"
|
||||
"365.28","64","male","partner","never","Placebo","more","no","no","no","0","9","yes","no","no","no","no","no","142.42","2","8","2","100"
|
||||
"412.9","55","male","partner","never","Active","guideline","no","no","no","0","5","yes","no","no","no","no","no","272.84","3","10","3","100"
|
||||
"108.31","67","female","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","116.25","1","15","8","72"
|
||||
"153.22","86","male","partner","never","Active","guideline","yes","no","no","0","4","no","no","no","no","no","no","108.2","1","4","0","92"
|
||||
"111.8","78","female","alone","ever","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"101.16","74","male","alone","ever","Active","guideline","no","no","no","0","3","no","no","no","no","no","no","96","3","6","2","96"
|
||||
"157","73","male","partner","never","Active","guideline","no","yes","no","1","3","no","no","no","no","no",NA,NA,"0","8","1","88"
|
||||
"290.84","61","male","partner","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","262","1","9","0","88"
|
||||
"88.2","74","female","alone","ever","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","130","1","17","16",NA
|
||||
"170.66","45","male","alone","ever","Active","guideline","yes","yes","no","0","13","no","no","no","no","no","no","170.84","1","6","0","52"
|
||||
"107.72","82","male","partner","ever","Placebo","guideline","no","yes","no","0","10","yes","no","yes","no","no","no","138.38","1","9","4","64"
|
||||
"225.4","61","male","partner","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","219.55","0","9","6","60"
|
||||
"235.16","57","male","partner","never","Active","guideline","yes","no","no","0","0","no","no","no","no","no","no","255.33","0","9","2","72"
|
||||
"50","82","female","partner","never","Active","guideline","no","no","no","0","17","yes","no","yes","no","no","no","30.5","2","15","8","84"
|
||||
"99.55","74","female","alone","never","Active","guideline","no","yes","no","0","7","no","no","no","no","no","yes","58.82","4","13","8","76"
|
||||
"105.61","80","female","alone","never","Active","guideline","no","yes","yes","1","0","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"28.95","78","male","partner","never","Placebo","more","no","yes","no","0","2","yes","no","no","no","no","no","167.32","1","10","4","92"
|
||||
"179.5","71","male","alone","ever","Placebo","guideline","no","yes","no","0","5","yes","no","no","yes","no","no","177.34","2","12","8","76"
|
||||
"245.11","56","male","alone","never","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","92.4","1","7","8","84"
|
||||
"315.8","45","male","partner","never","Active","guideline","no","no","no","0","3","yes","no","no","no","no","no","378.79","0","6","5","72"
|
||||
"120","70","female","partner","ever","Active","guideline","yes","no","no","0","11","no","no","yes","no","no","no","78.4","1","17","26","56"
|
||||
"58.4","84","female","partner","never","Placebo","guideline","yes","yes","no","0","4","yes","no","no","no","no","no","204.55","2","17","7","56"
|
||||
"56.4","66","female","alone","never","Active","guideline","yes","no","no","0","12","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"159.11","54","male","partner","never","Active","guideline","no","yes","no","0","1","yes","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"156.53","52","male","partner","ever","Active","guideline","no","yes","no","0","17","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"186.8","62","female","partner","ever","Active","guideline","no","yes","yes","0","8","yes","no","no","no","no","no","165.4","2","16","18","24"
|
||||
"142.36","67","male","partner","never","Active","more","no","no","no","0","2","no","no","no","no","no","no","213.2","2","4","5","100"
|
||||
"242.4","64","male",NA,"never","Active",NA,"no","no","no","0","0","no","no","no","no","no","no","212.4","2","9","2","96"
|
||||
"58.4","93","male","alone","never","Placebo","guideline","no","yes","no","1","11","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"62.26","89","male","partner","never","Placebo","guideline","no","yes","no","2","3","yes","no","no","no","no","no","122.81","2","14","10","36"
|
||||
"105.72","74","male","partner","never","Placebo","guideline","yes","yes","no","0","2","no","yes","no","no","no","no","160.26","1","10","8","76"
|
||||
"258.2","66","male","partner","never","Placebo","more","no","yes","no","0","2","no","no","no","no","no","no","138.25","1","8","6","76"
|
||||
"256","51","female","alone","never","Active","guideline","no","no","no","0","4","yes","no","yes","no","no","no","77.25","2","15","29","60"
|
||||
"52.2","69","male","alone","ever","Placebo","guideline","yes","yes","yes","0","1","no","no","no","no","no","no","108.2","2","4","3","100"
|
||||
"50","93","female","alone","ever","Placebo","guideline","no","yes","yes","2","1","no","no","no","no","no","no","25","4","15","5","76"
|
||||
"103.29","66","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","yes","21.42","4","13","40","56"
|
||||
"229.73","64","male","alone","never","Active","guideline","no","yes","no","0",NA,"no","no","no","yes","no","yes","29.51","4","5","1","88"
|
||||
"196.8","71","male","partner","never","Placebo","guideline","no","yes","no","1","1","yes","no","no","no","no","no","146.8","1","12","2","76"
|
||||
"183.4","66","male","alone","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","140.8","1","7","1","88"
|
||||
"76.4","73","female","partner","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no",NA,NA,"2","18","3","88"
|
||||
"33.4","75","male","alone","never","Active","guideline","yes","no","no","0","2","no","no","no","no","no","no","106.8","1","7","1","84"
|
||||
"75","69","female","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","25","2","16","12","72"
|
||||
"65","78","male","partner","never","Active","guideline","no","no","no","2","2","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"185.15","74","female","partner","never","Active","guideline","no","no","no","0","4","no","no","no","no","no","no","183.79","1","4","3","84"
|
||||
"155.52","68","male","partner","ever","Active","guideline","yes","yes","no","0","3","no","no","no","no","no","no","134.8","0","7","3","76"
|
||||
"34.56","78","female","alone","never","Placebo","guideline","no","yes","no","0","1","yes","no","no","no","no","no","103.7","2","10","2","96"
|
||||
"76.21","65","male","partner","never","Placebo","guideline","no","no","no","0","2","no","no","no","no","no","no","67.76","0","13","27","24"
|
||||
"65","70","male","alone","never","Active","more","no","yes","no","0","1","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"133.89","79","male","partner","never","Active","guideline","no","yes","yes","2","19","yes","no","yes","no","no","no","82.46","3","12","11","48"
|
||||
"50","75","female","partner","ever","Active","guideline","yes","yes","no","1","1","no","no","no","no","no","no","109.72","2","7","2","80"
|
||||
"111","72","male","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","113.53","0","20","29","16"
|
||||
"213.4","56","male","partner","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","no","182.7","2","17","18","24"
|
||||
"50.8","56","male","alone","never","Placebo","guideline","no","yes","no","1","12","yes","no","no","no","no","no","68.3","2","18","21","28"
|
||||
"213.25","55","male","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","224.53","1",NA,"8","76"
|
||||
"145.56","80","male","partner","never","Active","guideline","yes","no","no","0","6","no","no","no","no","no","no","149.82","2","7","1","84"
|
||||
"50","80","male","alone","ever","Active","guideline","yes","no","no","0","8","yes","no","no","no","no","no","78.82","2","17","9","52"
|
||||
"76.4","66","male","partner","never","Active","guideline","yes","no","no","0","2","no","no","no","no","no","no","161","0","13","9","60"
|
||||
"136","63","female","partner","ever","Active","guideline","no","yes","yes","0","2","no","no","no","no","no","no","239.04","1","11","6","68"
|
||||
"230.9","54","male","partner","ever","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","143.53","1","8","3","72"
|
||||
"248.25","45","male","partner","ever","Active","guideline","yes","no","no","0","0","no","no","no","no","no","no","153.25","1","12","8","88"
|
||||
"101","88","female","alone","ever","Active","guideline","no","yes","no","0","4","no","no","no","no","no",NA,NA,"3",NA,NA,NA
|
||||
"133.4","71","male","partner","never","Active","guideline","no","yes","no","0","10","yes","no","no","no","no","no","145.4","0","4","0","96"
|
||||
"113.52","73","male","partner","never","Placebo","guideline","no","no","yes","2","19","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"141.8","67","male","partner","never","Active","guideline","no","yes","no","0","7","yes","no","no","yes","no","no","218.39","1","18","37","48"
|
||||
"170.8","64","male","partner","never","Placebo","guideline","no","yes","yes","0","5","yes","no","no","no","no","no","210.24","1","12","2","80"
|
||||
"50.8","58","female","partner","never","Active","guideline","no","yes","no","1","4","no","no","no","no","no","no","35","3","16","37","40"
|
||||
"78.33","71","male","alone","never","Active","more","no","no","no","1","4","no","no","no","no","no","yes","4.51","4","20","38","20"
|
||||
"146.8","71","female","partner","ever","Active","guideline","no","no","no","0","20","yes","no","no","no","no",NA,NA,"3","14","7","88"
|
||||
"108.2","87","male","alone","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","yes","67.22","2","5","4","88"
|
||||
"180","61","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","281.07","2","10","6","76"
|
||||
"130.8","76","male","partner","ever","Placebo","guideline","yes","no","no","0","0","no","no","no","no","no","no","455.45","2","4","1","92"
|
||||
"123.22","70","female","alone","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","94.4","1","5","6","80"
|
||||
"201.8","69","male","partner","never","Placebo","guideline","no","yes","yes","0","2","no","no","no","no","no","no","204.55","2","11","6","44"
|
||||
"52.2","67","male","alone","never","Placebo","more","no","no","no","1","5","no","no","no","no","no","no","74.25","1","11","9","72"
|
||||
"282","60","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","yes","no","no","177.4","2","10","7","80"
|
||||
"89.61","82","male","alone","never","Placebo","guideline","no","yes","yes","0","4","no","no","no","no","no","no","158.52","0","4","0","96"
|
||||
"77.31","78","female","alone","ever","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","209.9","2","16",NA,"44"
|
||||
"204.67","71","female","partner","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","91","2","4","0","100"
|
||||
"220.9","59","male","partner","never","Active","guideline","no","no","no","1","3","yes","no","no","no","no","no","194.43","2","13","9","40"
|
||||
"233.52","56","male","alone","never","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no","no","144.4","1",NA,NA,NA
|
||||
"325.6","46","male","partner","ever","Placebo","guideline","no","no","no","0","3","yes","no","no","no","no","no","177.87","2","16","19","44"
|
||||
"113","76","female",NA,"never","Placebo","guideline","no","no","no","1","4","no","yes","no","no","no","no","79.15","2","20","36","12"
|
||||
"91.71","64","male","partner","never","Active","more","no","yes","yes","0","5","yes","no","no","no","no",NA,NA,"1",NA,NA,NA
|
||||
"195.8","58","female","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","111","1","11","11","76"
|
||||
"196.95","49","female","partner","ever","Active","guideline","no","no","no","0","5","yes","no","no","no","no","no","193.8","0","13","8","76"
|
||||
"207.31","52","male","alone","ever","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","208.5","2","12","2","68"
|
||||
"53.4","88","male","partner","never","Placebo","guideline","no","yes","no","2","3","no","yes","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"45","82","male","partner","never","Placebo","guideline","no","no","no","0","7","no","no","no","no","no",NA,NA,"4","7","15","48"
|
||||
"25","82","female","alone","never","Placebo","guideline","no","no","no","1","6","no","no","no","no","no","no","25.8","3","16","9","72"
|
||||
"167.4","34","female","partner","ever","Active","guideline","no","no","no","0","10","yes","no","no","no","no","no","139.05","2","20","36","24"
|
||||
"85","78","female","partner","ever","Active","guideline","no","no","no","0","3","no","no","no","no","no","no","131.8","1","12","1","92"
|
||||
"27.2","74","female","alone","never","Active","more","no","yes","no","2","2","no","no","no","no","no","no","36.02","2","10","3","84"
|
||||
"15","64","female","partner","never","Active","guideline","no","no","no","0","0","no","no","no","no","no","no","30.75","0","13","9","76"
|
||||
"225.4","51","male","partner","ever","Active","guideline","no","no","no","0","4","yes","no","no","no","no","no","211","0","7","1","88"
|
||||
"75.8","85","male","alone","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","no","75.8","1","17","12","36"
|
||||
"196.2","59","male","partner","never","Active","guideline","no","no","no","0","7","yes","no","no","no","no","no","122","1","11","3","84"
|
||||
"194.73","70","male","partner","ever","Placebo","guideline","no","no","no","0","4","yes","no","no","no","no","no","131.8","0","4","0","100"
|
||||
"40.12","77","male","partner","never","Placebo","guideline","yes","yes","no","0","1","yes","no","no","no","no","no","244.49","2","13","2","92"
|
||||
"106","82","male","partner","ever","Placebo","guideline","yes","no","no","0","19","yes","no","yes","no","no",NA,NA,"2",NA,NA,NA
|
||||
"63.38","73","female","partner","never","Active","guideline","no","no","no","0","0","no","no","no","no","no","no","153.14","1","11","4","72"
|
||||
NA,"42","male","partner","ever","Placebo","guideline","no","no","no","0","7","yes","no","no","no","no",NA,"202.37","2","5","5","84"
|
||||
"178.11","62","male","partner","never","Active","guideline","no","yes","no","0","26","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"314.76","58","male","partner","never","Placebo","guideline","no","yes","no","0","0","yes","no","no","no","yes",NA,NA,NA,NA,NA,NA
|
||||
"196.47","84","male","partner","ever","Placebo","guideline","no","yes","no","0","6","no","no","no","no","no","yes","7.31","4","16","15","64"
|
||||
NA,"71","female","alone","never","Active","guideline","yes","yes","no","3",NA,"no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"247","54","male","partner","never","Active","more","no","yes","no","1","3","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"81.87","70","female","partner","ever","Active","guideline","no","yes","yes","0","3","yes","no","no","no","no","yes","59.66","1","12","5","88"
|
||||
"132.12","87","male","partner","ever","Active","more","no","no","no","0","6","no","no","no","no","no","yes","36.72","3","14","5","84"
|
||||
"50","84","male","alone","never","Active","guideline","yes","yes","no","2",NA,"no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
NA,"76","female","alone","never","Active","guideline","no","no","yes",NA,NA,"no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"247","67","male","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","298.9","1","14","16","16"
|
||||
"166.72","52","male","partner","ever","Active","guideline","no","no","no","0","13","yes","no","yes","yes","no","no","161.4","1","13","5","64"
|
||||
"81.7","80","female","alone","ever","Active","guideline","no","yes","no","0","7","no","no","no","no","no","no","184.31","2","17","17","48"
|
||||
"148","63","female","alone","never","Placebo","guideline","no","yes","no","0","7","no","no","no","no","no","no","85","0","4","0","100"
|
||||
"43.8","67","male","partner","never","Placebo","guideline","no","yes","no","1","9","yes","no","yes","no","no","no","54.11","2","12","14","32"
|
||||
"143.31","67","male",NA,NA,"Placebo",NA,NA,NA,"no","0","0","no","no","no","no",NA,"yes","27.2","1","18","27","40"
|
||||
"14.72","52","male","partner","never","Active","more","no","yes","yes","0","3","yes","no","no","no","no","no","97.4","0","14","6","68"
|
||||
"174.94","69","female","alone","never","Placebo","guideline","yes","yes","no","0","5","no","no","no","no","no","no","203.78","1","12","13","64"
|
||||
"247","71","male","partner","never","Active","guideline","yes","no","no","0","11","yes","no","no","no","no","yes","61.2","2","8","5","96"
|
||||
"73.67","79","female","alone","never","Placebo","guideline","no","no","no","0","18","yes","no","yes","no","no","no","131.3","2","9","4","72"
|
||||
"122.55","75","male","partner","never","Active","guideline","no","no","no","0","3","no","yes","no","yes","no","no","81.59","0","7","4","76"
|
||||
"65","74","female","partner","never","Placebo","guideline","no","yes","no","0","6","no","no","no","no","no","no","75.8","1","16","7","72"
|
||||
"75","76","female","partner","ever","Active","guideline","no","yes","yes","0","2","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"64.67","75","female","alone","never","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no","no","125.61","0","11","5","76"
|
||||
"135.48","72","female","alone","ever","Active","guideline","yes","no","no","0","1","no","no","no","no","no","no","108.8","1","7","0","96"
|
||||
"106.07","65","female","alone","ever","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","92.09","1","5","5","84"
|
||||
"252.4","48","male","alone","never","Placebo","more","no","yes","no","0","2","no","no","no","no","no","no","302.48","1","7","7","76"
|
||||
"107.5","63","male","partner","ever","Active","guideline","no","yes","no","0","1","yes","no","no","no","no","no","210.17","1","8","2","96"
|
||||
"109.61","74","male","partner","never","Placebo","guideline","yes","yes","no","1","2","yes","no","no","no","no","no","111","2","4","3","40"
|
||||
"116.8","73","male","partner","never","Placebo","guideline","yes","no","no","0","2","yes","no","no","no","no",NA,NA,"0",NA,NA,NA
|
||||
"114.92","78","male","partner","ever","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","99.77","5","13","9","52"
|
||||
"85.5","45","male","partner","never","Placebo","guideline","no","no","no","0","5","no","no","no","no","yes","no","203.12","1","8","3","80"
|
||||
"124.07","66","male","alone","never","Active","guideline","no","no","no","0","3","no","no","no","yes","no","yes","50.8","3","13","1","84"
|
||||
"263.33","37","male","partner","ever","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","148.05","0","8","9","60"
|
||||
"166.8","54","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","236.8","0","4","1","100"
|
||||
NA,"83","male","partner","ever","Active","guideline","yes","no","no",NA,"27","no","no","yes","yes","yes",NA,NA,"6",NA,NA,NA
|
||||
"147.11","66","female","alone","never","Placebo","guideline","no","no","no","0","6","no","no","no","no","no","no","261.43","2","16","7","44"
|
||||
"150","55","male","partner","never","Active","guideline","yes","yes","yes","0","5","no","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"39.23","92","female","alone","ever","Placebo","guideline","no","yes","no","2","9","no","no","no","no","no","no","2.2","4","18","25","20"
|
||||
"78.82","88","female","partner","never","Active","guideline","yes","yes","no","0","21","yes","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"290.93","57","male","partner","ever","Placebo","guideline","no","no","no","0","3","no","no","no","no","no","no","276.72","0","12","8","72"
|
||||
"431.8","55","male","partner","never","Active","guideline","yes","yes","no","0","1","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"65","79","female","alone","never","Active","guideline","no","no","no","0","8","no","no","no","no","no",NA,NA,"6",NA,NA,NA
|
||||
"173.65","78","female","partner","ever","Active","guideline","yes","no","no","0","0","yes","no","no","no","no","no","210.58","1","8","5","72"
|
||||
"196.8","48","male","partner","ever","Active","guideline","no","no","no","0","2","yes","no","no","no","no","no","164.16","1","11","14","100"
|
||||
"58.4","80","male","alone","never","Placebo","guideline","no","no","no","2","2","no","no","no","no","no","no","78.4","3","14","10","80"
|
||||
"40","49","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","yes","no","no","no","no","142.98","0","14","30","60"
|
||||
"90.55","75","male","partner","ever","Placebo","guideline","no","yes","yes","0","5","yes","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"55.2","74","male","alone","never","Placebo","guideline",NA,"yes","no","0","5","no","yes","no","yes","no",NA,NA,"2","18","12","68"
|
||||
"102.31","85","female","alone","never","Placebo","guideline","yes","no","no","0","1","no","no","no","no","no","no","171.28","0","11","8","76"
|
||||
"60.49","82","male","alone","ever","Active","guideline","no","yes","no","0","5","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"27.2","79","male","partner","never","Placebo","guideline","yes","yes","yes","2","3","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"68.4","75","male","partner","never","Active","guideline","no","yes","yes","1","5","no","no","no","no","yes","no","2.2","2","16","12","48"
|
||||
"221.47","70","male","partner","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","yes","no","no","187.3","2","5","7","76"
|
||||
"272.8","57","male","partner","never","Active","guideline","no","no","no","0","4","no","no","no","no","no","no","259.84","2","9","2","100"
|
||||
"35.25","85","female","alone","ever","Active","guideline","no","yes","no","3","23","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"67.86","83","female","alone",NA,"Placebo",NA,"no","yes","no","0","5","no","no","no","no","no","no","92","1",NA,"8","84"
|
||||
"137.52","77","female","alone","ever","Active","guideline","no","no","no","0","5","yes","no","no","no","no","no","261.65","1","10","4","64"
|
||||
NA,"76","female","alone","never","Active","guideline","no","yes","no","1","7","no","no","no","no","no",NA,"30","3","16","11","28"
|
||||
"227.71","54","male","partner","ever","Active","guideline","no","no","no","0","4","yes","no","no","no","no","no","206.06","2","15","5","72"
|
||||
"56.4","78","female","alone","ever","Active","guideline","yes","yes","no","0","11","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"16","85","male","partner","never","Active","guideline","no","yes","no","3","2","no","no","no","no","no","no","4.51","3","4","4","84"
|
||||
"135.1","82","male","partner","ever","Placebo","more","no","no","no","1","3","yes","no","no","no","no","no","144.77","1","12","4","72"
|
||||
NA,"80","male","partner","never","Placebo","more","yes","yes","no","0","12","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"42.22","91","female","alone","never","Placebo","guideline","no","yes","yes","0","0","no","yes","no","no","no","no","42.22","1","20","7","36"
|
||||
"52.2","78","male","alone","never","Placebo","guideline","no","yes","no","0","4","no","no","no","no","no","no","171.56","3","10","6","64"
|
||||
"0","78","male","partner","never","Placebo","guideline","no","yes","no","1","2","no","no","no","no","no","no","14.65","4","11","1","84"
|
||||
"154.96","77","male","partner","ever","Placebo","guideline","no","yes","no","1","2","yes","no","no","no","no","no","107","2","18","12","40"
|
||||
"38.2","71","male","partner","never","Placebo","guideline","no","yes","yes","0","1","no","no","no","no","no","no","95","1","20","24","64"
|
||||
"135.46","66","male","partner","never","Active","guideline","no","no","yes","0","2","no","no","no","no","no","no","139.86","2","9","12","68"
|
||||
"205.4","55","male","alone","never","Placebo","guideline","no","yes","yes","0","2","no","no","no","no","no","yes","60","1","17","8","40"
|
||||
"81.67","71","female","alone","never","Placebo","guideline","no","yes","no","0","5","no","no","no","no","no","yes","44.16","3","16","20","20"
|
||||
"85.05","84","male","partner","never","Placebo","more","no","no","no","1","2","yes","no","no","no","no","no","128.11","1","5","5","88"
|
||||
"71.4","80","male","alone",NA,"Placebo","guideline","yes","yes","yes","0","3","yes","no","yes","no","no","no","151","1","16","5","80"
|
||||
"101.74","71","female","alone","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no","yes","27.6","1","12","6","88"
|
||||
"290.56","69","male","partner","never","Active","more","no","no","no","0","1","no","no","no","yes","no","no","254.35","1","7","3","80"
|
||||
"251.2","62","male","partner","never","Active","guideline","no","no","no","0","2","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"274.11","57","male","partner",NA,"Placebo",NA,"yes","yes","yes","0","7","yes","yes","yes","no","no","no","378.76","0","9","3","64"
|
||||
"226","61","male","alone","ever","Placebo","guideline","no","yes","no","0","5","yes","no","no","no","no","no","295.76","0","4","0","92"
|
||||
"59.56","75","male","alone","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","135.72","2","6","6","92"
|
||||
"53.11","93","female","alone","never","Placebo","guideline","no","yes","no","1","2","no","no","no","no","no","no","38.82","2","18","9","56"
|
||||
"150.6","86","male","partner","never","Placebo","guideline","no","no","no","0","3","no","yes","no","no","no","no","111","1","10","5","64"
|
||||
"119.55","84","male","alone","ever","Placebo","guideline","no","yes","no","0","2","yes","no","no","no","no","yes","74.55","2","12","11","72"
|
||||
"121.4","80","male","partner","never","Placebo","guideline","no","yes","yes","2","4","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"180.56","70","male","partner","never","Placebo","guideline","no","yes","no","0","2","yes","no","no","yes","no","no","249.46","2","14","20","72"
|
||||
"337.8","68","female","partner",NA,"Active","guideline","no","no","no","2","1","yes","no","no","no","no","no","201.72","2","5","0","92"
|
||||
"170.05","40","female","partner","never","Placebo","guideline","no","no","no","0","15","no","no","yes","no","no","yes","27.2","4","14","17","76"
|
||||
"95.8","77","female","partner","ever","Placebo","guideline","no","no","no","1","7","yes","no","no","no","no","no","131.8","1","15","12","100"
|
||||
"113.65","70","female","partner","never","Placebo","guideline","no","no","no","0","6","yes","no","no","no","no",NA,NA,"4","12","14","72"
|
||||
"108.2","84","male","partner","ever","Active","guideline","yes","yes","yes","0","9","no","no","no","no","no","no","112.08","4","8","5","40"
|
||||
"188.16","71","male","partner","never","Active","guideline","yes","yes","no","0","9","no","no","no","no","no","no","183.73","4","5","3","80"
|
||||
"361.93","44","male","partner","never","Placebo","guideline","no","no","no","0","2","yes","no","no","no","no","no","261.4","2","14","16","68"
|
||||
"228.61","80","male","partner","never","Active","guideline","no","no","no","0","3","no","no","no","no","no","no","328.27","2","14","8","76"
|
||||
"65","65","female","alone","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","153.05","3","17","4","76"
|
||||
"259.53","60","male","partner","never","Placebo","more","no","yes","no","0","4","no","no","no","no","no","no","169.75","3","4","4","92"
|
||||
"313.72","69","female","alone","never","Placebo","guideline","no","yes","no","0","1","no","no","no","no","no","yes","27.2","2","15","9","92"
|
||||
"169.4","47","male","partner","never","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no","no","79.57","2","9","11","92"
|
||||
"88.31","63","male","partner","never","Placebo","more","no","yes","no","0","3","yes","no","no","no","no","no","81.41","2",NA,NA,NA
|
||||
"236","57","male","alone","never","Placebo","more","no","no","no","0","1","no","no","no","no","yes","no","217","1","4","2","88"
|
||||
"78.44","78","female","partner","never","Active","guideline","yes","yes","no","0","12","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"249.4","33","male",NA,NA,"Active",NA,NA,NA,"no","0","1","no","no","no","no",NA,"no","204.82","1","4","1","84"
|
||||
"94.4","81","female","alone","ever","Active","guideline","no","yes","no","1","2","no","no","no","yes","no","yes","35.71","3","18","23","48"
|
||||
"214.12","70","male","partner","never","Placebo","guideline","no","no","no","0","0","no","no","no","no","no","no","191.8","1","16","11","60"
|
||||
"205.4","68","female","alone","ever","Placebo","guideline","no","no","no","0","3","yes","no","no","no","no","no","258.55","1","10","5","92"
|
||||
"139.3","67","female","alone","never","Placebo","guideline","yes","no","no","0","12","yes","no","yes","no","no","no","288.73","2","13","6","68"
|
||||
"237.87","73","male",NA,NA,"Active",NA,NA,NA,"no","0","4","no","no","no","no",NA,"no","169.58","1","9","2","96"
|
||||
"239.76","36","male","partner","ever","Active","guideline","no","no","no","0","0","no","no","no","no","no","no","181.4","2","18","8","56"
|
||||
"106.68","78","female","partner","never","Active","guideline","no","yes","no","0","4","no","no","no","no","no","no","199.26","2","6","5","76"
|
||||
"50","71","female","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","no","no","no","52.2","3","17","14","48"
|
||||
"52.2","38","male","partner","ever","Placebo","guideline","no","no","no","0","5","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"85.25","79","male","partner","never","Active","guideline","no","yes","no","0","6","no","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"59.56","78","female","partner","ever","Active","more","no","yes","no","0","7","yes","no","no","no","no","no","131.2","4","16","12","68"
|
||||
"168.4","77","female","partner","ever","Active","guideline","no","yes","no","0","16","no","no","no","no","no","yes","0","4","16","18","52"
|
||||
"232","63","male","partner","ever","Placebo","guideline","no","yes","yes","0","3","no","no","no","no","no","no","162.08","2","14","15","68"
|
||||
"116.53","77","male","partner","never","Placebo","guideline","no","yes","yes","0","8","yes","no","yes","no","no",NA,NA,NA,NA,NA,NA
|
||||
"89.12","75","male","partner","never","Active","guideline","no","yes","no","0","6","no","no","no","no","no","no","159.71","1","13","13","64"
|
||||
"50","68","female","alone","never","Active","guideline","no","no","no","0","2","no","no","no","no","no","no","129.1","0","12","4","72"
|
||||
"199.72","56","male","partner","never","Active","guideline","no","no","no","0","2","yes","no","no","no","no","no","172.02","1","18","7","76"
|
||||
"176.89","83","female","alone","never","Active","guideline","no","yes","no","0","5","no","no","no","no","no","no","138.53","0","13","2","92"
|
||||
"143.71","71","male","partner","never","Placebo","more","no","no","no","0","5","no","no","no","no","no","yes","68.25","1","20","19","16"
|
||||
"148.11","68","male","partner","never","Active","more","no","yes","no","2",NA,"no","no","no","no","no","yes","58.4","2","20","45","4"
|
||||
"91.4","74","male","partner","ever","Placebo","guideline","no","yes","no","0","5","no","no","no","yes","no","no","170.49","1","13","3","76"
|
||||
"256.8","79","female","alone",NA,"Placebo",NA,"no","yes","no","0","21","no","yes","no","no","no","yes","0","4","10","15","20"
|
||||
"58.4","69","male","partner","ever","Placebo","guideline","yes","yes","no","0","17","yes","no","no","no","no","no","149.77","1","14",NA,"56"
|
||||
"162.99","67","female","partner","never","Active","guideline","no","no","no","0","4","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
"108.2","76","female","alone","never","Active","guideline","yes","no","no","2","2","no","no","no","no","no","yes","27.2","2","11","12","52"
|
||||
"119.51","48","female","partner","never","Active","guideline","no","no","no","0","15","yes","no","yes","no","no","no","167.11","2","14","6","68"
|
||||
"475.41","67","male","partner","never","Active","guideline","no","yes","no","0","1","no","no","no","yes","no","no","166","0","5","3","72"
|
||||
"31.4","82","female","alone","never","Placebo","guideline","no","yes","no","0","5","no","no","no","no",NA,NA,NA,"4",NA,NA,NA
|
||||
"161.86","70","female","partner","never","Placebo","guideline","no","no","no","1","7","yes","no","no","no","no","no","96.86","2",NA,"5","84"
|
||||
"25","94","female","alone","ever","Placebo","guideline","yes","yes","no","3","12","no","no","no","no","no",NA,NA,"4","13","32","80"
|
||||
"54.51","93","female","alone","never","Placebo","guideline","yes","yes","no","0","7","no","no","no","no","no",NA,NA,"5","15","18","28"
|
||||
"144.4","53","male","partner","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","yes","60.4","3","4","0","100"
|
||||
"55","42","male","alone","never","Active","guideline","no","no","no","0","2","yes","no","no","no","yes","no","58.4","1","18","8","48"
|
||||
"294.3","56","male","partner","never","Placebo","guideline","no","yes","no","0","5","yes","no","no","no","no",NA,NA,"1","6","5","88"
|
||||
"110.8","61","female","partner","never","Active","guideline","no","yes","yes","0","22","yes","no","yes","no","no",NA,NA,"6",NA,NA,NA
|
||||
"256.8","59","female","alone","never","Placebo","guideline","no","no","no","0","0","no","no","no","no","no","no","95.8","1","14","10","64"
|
||||
"255.91","69","female","partner","ever","Active","guideline","no","yes","no","2","5","yes","no","no","no","no","no","260.34","2","16","10","44"
|
||||
"264.65","47","male","partner","ever","Active","guideline","no","no","no","0","3","yes","no","no","no","no","no","305.28","1","16","4","68"
|
||||
"93.44","44","male","alone","never","Active","more","no","no","no","0","3","no","no","no","no","no","no","161.94","3","12","7","64"
|
||||
"132.5","69","male","partner","ever","Placebo","guideline","no","no","no","0","2","yes","no","no","no","no","no","179.32","0","12","6","60"
|
||||
"78.08","77","female","partner","never","Placebo","guideline","no","yes","no","0","15","yes","no","yes","no","no",NA,NA,"1",NA,NA,NA
|
||||
"108.4","75","male","alone","ever","Placebo","guideline","no","no","no","0","1","yes","no","no","no","no",NA,NA,"2","14","6","36"
|
||||
"33.93","86","female","alone","ever","Placebo","guideline","yes","no","no","2","24","yes","no","no","no","no","no","0","4","10","2","68"
|
||||
"574.26","70","male","partner","never","Placebo","guideline","no","yes","no","0","2","no","no","no","no","no","no","225.16","1","8","3","80"
|
||||
"309.5","56","male","partner","never","Active","guideline","no","no","no","0","1","yes","no","no","no","no","no","435.76","1","13","5","76"
|
||||
"247","48","female","partner","never","Placebo","guideline","no","no","no","0","12","yes","no","no","no","no","no","138.2","2","15","3","68"
|
||||
"136","55","male","partner","never","Active","guideline","no","no","no","0","13","yes","no","yes","no","no","no","172.2","0","13","6","52"
|
||||
"302.8","45","male","alone","never","Active","guideline","no","yes","no","0","0","no","no","no","no","no","no","121.4","2","12","4","92"
|
||||
NA,"79","male","partner","ever","Active","guideline","yes","yes","no","0","19","yes","no","yes","no","no",NA,NA,NA,NA,NA,NA
|
||||
"173.2","81","male","partner","never","Placebo","guideline","no","no","no","0","5","no","no","no","no","no","no","111.4","1","10","7","84"
|
||||
"152.11","79","male","alone","ever","Placebo","guideline","no","yes","no","0","1","no","no","no","yes","no","no","395.56","0","10","7","96"
|
||||
"238.23","57","male","alone","ever","Placebo","guideline","no","no","no","0","12","no","no","no","no","no","no","216.36","2","8","1","44"
|
||||
"229.16","83","male","alone","ever","Active","guideline","no","no","no","0","11","no","no","no","no","no","no","299.23","4","12","1","100"
|
||||
"136","82","male","alone","never","Placebo","guideline","no","yes","yes","1","18","no","no","no","no","no",NA,NA,"4","17","18","16"
|
||||
"61","79","male","partner","never","Placebo","guideline","no","yes","no","2","2","no","yes","no","yes","no","no","27.2","2",NA,NA,NA
|
||||
"221.8","77","male","alone","never","Active","guideline","yes","yes","no","0","22","no","no","no","no","no","yes","41.55","4",NA,"4","52"
|
||||
"149.16","49","male","partner","never","Placebo","guideline","no","no","no","1","2","no","no","no","no","no","no","256.55","2","10","1","80"
|
||||
"373.58","47","male","partner","ever","Active","guideline","no","no","no","0","6","yes","no","no","no","no","no","176.61","2","19","24","28"
|
||||
"204.4","81","female","alone","never","Active","guideline","no","no","no","0","6","no","no","no","no","no","no","114.82","1","17","9","60"
|
||||
"173.2","24","female","partner","ever","Active","guideline","no","no","no","0","1","no","no","no","no","no","no","171.2","2","10","6","64"
|
||||
"121","70","male","partner","never","Active","more","no","no","no","0","2","no","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"0","68","male","partner","ever","Placebo","guideline","yes","yes","yes","0","8","no","no","no","no","no",NA,NA,"2","7","4","16"
|
||||
"141.4","80","male","partner","never","Active","guideline","no","no","no","0","5","no","no","no","no","no","yes","4.51","2","5","0","88"
|
||||
"46","67","male","partner","never","Active","guideline","no","yes","no","1","18","yes","yes","no","no","no",NA,NA,"4","18","18","68"
|
||||
"206","55","male","alone","ever","Active","guideline","no","no","no","0","1","no","no","no","no","no",NA,NA,"1","9","6","88"
|
||||
"160.11","77","male","partner","ever","Placebo","guideline","no","no","no","0","4","no","no","yes","no","no","no","124.44","1","9","6","68"
|
||||
"60.61","71","female","partner","never","Active","guideline","no","yes","no","0","5","no","no","no","no","no","no","58.94","1","20","22","24"
|
||||
"148.49","63","female","partner","never","Placebo","guideline","no","yes","no","0","3","no","no","no","no","no","no","95.05","0",NA,NA,NA
|
||||
"5","62","male","partner","ever","Placebo","guideline","no","yes","yes","2","19","yes","no","no","yes","no","no","123.93","2","18","36","36"
|
||||
"98.17","61","male","partner","never","Active","more","no","yes","no","0","2","no","no","no","no","yes","no","157.12","3","5","9","80"
|
||||
"302.4","77","female","alone","never","Placebo","guideline","yes","yes","no","0","11","yes","no","no","no","no","no","180.6","3","11","9","72"
|
||||
"110.8","77","male","partner","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","yes","58.4","1","11","7","72"
|
||||
"166.8","90","male","alone","never","Placebo","more","yes","yes","no","0","10","no","no","no","no","no","yes","58.4","3","13","6","80"
|
||||
"162.01","71","female","alone","ever","Placebo","guideline","no","yes","no","0","1","yes","no","no","no","no","no","160.68","1","5","1","92"
|
||||
"156","68","female","alone","never","Active","more","no","yes","no","0","12","yes","no","no","no","no","no","85.46","2","4","1","100"
|
||||
"390.27","62","male","partner","ever","Active","guideline","no","no","yes","0","2","no","no","no","no","no","no","250.66","2","8","12","100"
|
||||
"155.96","57","male","partner","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","150.76","1","10","8","64"
|
||||
"58.4","72","male","alone","never","Placebo","more","no","no","no","0","7","no","no","no","no","no",NA,NA,"2","15","5","56"
|
||||
"199.87","79","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","yes","no",NA,NA,NA,NA,NA,NA
|
||||
"75.8","76","female","partner","never","Active","guideline","no","yes","no","0","3","no","no","no","no","no","no","59.7","2","19","8","64"
|
||||
"0","67","male","partner","never","Active","guideline","no","no","no","0","3","no","no","no","no","no","no","119.05","2","6","5","80"
|
||||
"131.8","66","male","partner","never","Placebo","guideline","no","no","no","0","1","no","no","no","no","no","no","121.4","1","10","4","76"
|
||||
"95.8","83","female","partner","never","Active","more","no","yes","no","1","2","no","no","no","no","no","yes","56.4","2","10","15","24"
|
||||
"90","71","male","alone","never","Placebo","guideline","no","no","no","0","6","no","no","no","no","no","yes","55","1","4","4","100"
|
||||
"67.22","68","male","alone","never","Placebo","guideline","no","yes","no","1","2","yes","no","no","no","no","no","137.89","2","8","3","84"
|
||||
"162.72","52","male","partner","never","Placebo","more","no","yes","no","0","3","yes","no","no","no","no","no","391.48","0","6","3","76"
|
||||
"227.33","80","male","partner","never","Active","guideline","no","yes","no","0","2","no","no","no","no","no","no","284.33","1","6",NA,"100"
|
||||
"188.48","84","male","partner","never","Placebo","guideline","yes","yes","yes","1","1","no","no","no","no","no","no","172.72","1","10","6","76"
|
||||
"229.2","50","male","partner","never","Placebo","guideline","no","no","no","0","3","no","no","no","no","no",NA,NA,"2","11","16","76"
|
||||
"197.15","44","male","partner","ever","Placebo","guideline","no","no","no","0","7","yes","no","no","no","no","no","245.75","1","8","6","76"
|
||||
NA,"63","male","partner","never","Placebo","guideline","no","no","no","0","2","yes","no","no","no","no",NA,NA,NA,NA,NA,NA
|
||||
|
290
1 PA Decline/archive/generation_1/data_format.R
Normal file
|
|
@ -0,0 +1,290 @@
|
|||
## ItMLiHSmar2022
|
||||
## data_format.R, child script
|
||||
## Data formatting and handling
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: Loading libraries
|
||||
## ====================================================================
|
||||
|
||||
library(Hmisc)
|
||||
library(dplyr)
|
||||
library(daDoctoR)
|
||||
library(tidyselect)
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: Loading data
|
||||
## ====================================================================
|
||||
|
||||
# rm(list = ls()) # Clear
|
||||
# setwd("/Users/au301842/Library/CloudStorage/OneDrive-Personligt/Research/ISLcourse/")
|
||||
# dta<-read.csv("/Users/au301842/Library/CloudStorage/OneDrive-Personligt/Research/ISLcourse/assigndata.csv")
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: Formatting variables
|
||||
## ====================================================================
|
||||
|
||||
dta <- export %>%
|
||||
# as_tibble()%>%
|
||||
mutate(any_rep=factor(ifelse(thrombolysis=="yes"|thrombechtomy=="yes","yes","no")), # If not noted, no therapy was received
|
||||
male_sex= factor(ifelse(sex=="female","no","yes")),
|
||||
# smoke_ever=factor(ifelse(smoke_ever=="never","no","yes")),
|
||||
civil=factor(ifelse(civil=="partner","no","yes")), # Sets "yes" for not-cohabiting
|
||||
rtreat=factor(ifelse(rtreat=="Placebo","no","yes")), # "Yes" receives active treatment
|
||||
alc=factor(ifelse(alc=="more","yes","no")), # Yes for more than guideline
|
||||
pase_0=as.numeric(pase_0),
|
||||
pase_6=as.numeric(pase_6),
|
||||
across(c("diabetes",
|
||||
"hypertension",
|
||||
"smoker",
|
||||
# "smoker_prev",
|
||||
"afli",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0",
|
||||
"mrs_1"),as.factor),
|
||||
across(c("nihss_c",
|
||||
"age",
|
||||
"mdi_1", # For "enriched" analysis
|
||||
"who5_score_1",
|
||||
"mfi_gen_1",
|
||||
"mfi_phys_1",
|
||||
"mfi_act_1",
|
||||
"mfi_mot_1",
|
||||
"mfi_men_1"),as.numeric )
|
||||
)%>%
|
||||
select(-c(sex))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Defining outcome
|
||||
## ====================================================================
|
||||
|
||||
## Changed to step 7
|
||||
## This is to perform proper quantile split based on actually included.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: Ordering variables
|
||||
## ====================================================================
|
||||
|
||||
vars <- c("age",
|
||||
"male_sex",
|
||||
"civil",
|
||||
"pase_0",
|
||||
"smoker",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"any_rep",
|
||||
"rtreat",
|
||||
"pase_6")
|
||||
|
||||
dta<-select(dta,c(vars,
|
||||
"mrs_1",
|
||||
"mfi_gen_1",
|
||||
"mfi_phys_1",
|
||||
"mfi_act_1",
|
||||
"mfi_mot_1",
|
||||
"mfi_men_1",
|
||||
"mdi_1",
|
||||
"who5_score_1"
|
||||
))
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: Labeling
|
||||
## ====================================================================
|
||||
|
||||
var.labels = c(age="Age",
|
||||
male_sex="Male",
|
||||
civil="Living alone",
|
||||
pase_0="Pre-stroke PASE score",
|
||||
pase_6="Six month PASE score",
|
||||
smoker="Daily or occasinally smoking",
|
||||
# smoker_prev="Previous habbit of smoking",
|
||||
alc="More alcohol than recommendation",
|
||||
afli="AFIB",
|
||||
hypertension="Hypertension",
|
||||
diabetes="Diabetes",
|
||||
pad="PAD",
|
||||
ami="Previous MI",
|
||||
tci="Previous TIA",
|
||||
mrs_0="Pre-stroke mRS [-1]",
|
||||
nihss_c="Acute NIHSS score",
|
||||
thrombolysis="Acute thrombolysis",
|
||||
thrombechtomy="Acute thrombechtomy",
|
||||
any_rep="Any reperfusion therapy",
|
||||
rtreat="Active trial treatment",
|
||||
mrs_1="One month mRS [-1]",
|
||||
mfi_gen_1="One month MFI (General fatigue)",
|
||||
mfi_phys_1="One month MFI (Physical fatigue)",
|
||||
mfi_act_1="One month MFI (Reduced activity)",
|
||||
mfi_mot_1="One month MFI (Reduced motivation)",
|
||||
mfi_men_1="One month MFI (Mental fatigue)",
|
||||
mdi_1="One month MDI",
|
||||
who5_score_1="One month WHO5",
|
||||
pase_decl_rel_fac="PASE score difference, relative F",
|
||||
pase_decl_abs_fac="PASE score difference, absolute F",
|
||||
pase_drop_fac="PASE first quartile drop F",
|
||||
pase_hop_fac="PASE first quartile hop F",
|
||||
pase_diff="PASE absolute decline",
|
||||
pase_decl_rel="PASE relative decline",
|
||||
pase_0_cut="PASE 0 quartiles",
|
||||
pase_6_cut="PASE 6 quartiles")
|
||||
|
||||
## Labelling based on outcome flag
|
||||
if (pout=="decl_rel"|pout=="decl_abs"){
|
||||
var.labels = c(var.labels,group="PASE decline")}
|
||||
if (pout=="drop"){
|
||||
var.labels = c(var.labels,group="PASE drop")}
|
||||
|
||||
## ====================================================================
|
||||
# Step 7: final data export
|
||||
## ====================================================================
|
||||
|
||||
data_summary<-summary(dta)
|
||||
|
||||
# Saving "old" factorised variables
|
||||
sel<-sapply(dta,is.factor)
|
||||
# Reformatting factors as 1/2 for analysis
|
||||
dta<-dta |>
|
||||
mutate(across(where(is.factor), as.numeric))|> # Turning factors into 1(no) or 2(yes) for model. Numbered alphabetically.
|
||||
mutate(across(matches(colnames(dta)[sel]), as.factor),
|
||||
across(starts_with("pase_"), as.numeric))
|
||||
|
||||
# Filtering out non-PASE
|
||||
X_tbl<-dta |>
|
||||
filter(!is.na(pase_0),!is.na(pase_6))
|
||||
|
||||
nrow(X_tbl)
|
||||
|
||||
# Defining possible outcome meassures. Keeping in df for characterisation
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(## Relative decline
|
||||
pase_diff=(pase_0-pase_6),
|
||||
pase_decl_rel = pase_diff/pase_0*100,
|
||||
pase_decl_rel_fac=factor(ifelse(pase_decl_rel>=rel_dif,"yes","no")),
|
||||
## Absolute decline
|
||||
pase_decl_abs_fac=factor(ifelse(pase_diff>=abs_dif,"yes","no")),
|
||||
## Drop
|
||||
pase_0_cut=quantile_cut(as.numeric(pase_0),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE,
|
||||
detail.lst=FALSE),
|
||||
pase_6_cut=quantile_cut(as.numeric(pase_6),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE,
|
||||
detail.lst=FALSE),
|
||||
pase_drop_fac=factor(ifelse(pase_6_cut==1&pase_0_cut!=1,"yes","no")),
|
||||
pase_hop_fac=factor(ifelse(pase_6_cut!=1&pase_0_cut==1,"yes","no")))
|
||||
|
||||
Hmisc::label(X_tbl) = as.list(var.labels[match(names(X_tbl), names(var.labels))])
|
||||
|
||||
# Setting final primary output from "pout"
|
||||
if (pout=="decl_rel"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_decl_rel_fac)
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_0!=0)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
if (pout=="decl_abs"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_decl_rel_fac)
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_0>=abs_dif)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
if (pout=="drop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_drop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_0_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
if (pout=="hop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_hop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_6_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
# Excluding one month measures for primary analysis and setting df for table one
|
||||
X_tbl_f <- X_tbl_f |>
|
||||
select(-c(who5_score_1,
|
||||
mdi_1,
|
||||
mrs_1,
|
||||
starts_with("mfi_"))) # Left out of model as no present in drop-group
|
||||
|
||||
# Dropping non-complete for analysis
|
||||
Xy <- X_tbl_f|>
|
||||
na.omit()|> # Keeping only complete observations
|
||||
select(-c(tci) # Left out of model as no present in drop-group
|
||||
)|>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2))) # Sets binary mRS 0 to include in glmnet, 0 or above
|
||||
|
||||
label(Xy) = as.list(var.labels[match(names(Xy), names(var.labels))])
|
||||
|
||||
X<-dplyr::select(Xy,-c(group, -starts_with("pase_")) # Exclude primary outcome
|
||||
)
|
||||
y<-Xy$group
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Secondary analysis
|
||||
## ====================================================================
|
||||
|
||||
|
||||
dta_s<-X_tbl|>
|
||||
select(-c(tci),
|
||||
-starts_with("pase_"))|>
|
||||
na.omit()|>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2)),# Sets binary mRS 0 to include in glmnet, 0 or above
|
||||
mrs_1=factor(ifelse(mrs_1==1,1,2)))# Sets binary mRS 1 to include in glmnet, 0 or above
|
||||
|
||||
label(dta_s) = as.list(var.labels[match(names(dta_s), names(var.labels))])
|
||||
|
||||
## ====================================================================
|
||||
# Step 8: Loading rest of libraries
|
||||
## ====================================================================
|
||||
|
||||
library(tidyverse)
|
||||
library(patchwork)
|
||||
library(caret)
|
||||
library(glmnet)
|
||||
library(leaps)
|
||||
library(pROC)
|
||||
library(gt)
|
||||
library(gtsummary)
|
||||
library(dplyr)
|
||||
49
1 PA Decline/archive/generation_1/data_set.R
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
## ItMLiHS assignment data set
|
||||
|
||||
export<-read.csv("/Volumes/Data 1/exercise/source/background.csv",colClasses = "character", na.strings = c("NA","","unknown"))
|
||||
|
||||
export<-export[,c("pase_0",
|
||||
"age",
|
||||
"sex",
|
||||
"civil",
|
||||
"smoke_ever",
|
||||
"smoker",
|
||||
"rtreat",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"thrombolysis",
|
||||
"pad",
|
||||
"thrombechtomy",
|
||||
"ami",
|
||||
"tci",
|
||||
"pase_6",
|
||||
"mrs_1",
|
||||
"mfi_gen_1",
|
||||
"mfi_phys_1",
|
||||
"mfi_act_1",
|
||||
"mfi_mot_1",
|
||||
"mfi_men_1",
|
||||
"mdi_1",
|
||||
"who5_score_1")]
|
||||
|
||||
export$diabetes[is.na(export$diabetes)]<-"no"
|
||||
export$diabetes[is.na(export$hypertension)]<-"no"
|
||||
export$thrombolysis[is.na(export$thrombolysis)]<-"no"
|
||||
export$thrombechtomy[is.na(export$thrombechtomy)]<-"no"
|
||||
export$pad[is.na(export$pad)]<-"no"
|
||||
export$ami[is.na(export$ami)]<-"no"
|
||||
# export$smoker_prev <- ifelse(export$smoker=="3","yes","no")
|
||||
export$smoker <- ifelse(export$smoker=="1","yes","no")
|
||||
export$smoker[is.na(export$smoker)] <- "no"
|
||||
# export$mrs_0[export$mrs_0==3]<-NA
|
||||
|
||||
|
||||
|
||||
# export<-na.omit(export)
|
||||
|
||||
export
|
||||
# write.csv(export,"/Users/au301842/Library/CloudStorage/OneDrive-Personligt/Research/ISLcourse/assigndata.csv",row.names = FALSE)
|
||||
138
1 PA Decline/archive/generation_1/dataset_redcap.R
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
# Data
|
||||
## Import from previous work
|
||||
# dta<-read.csv("/Volumes/Data/exercise/source/background.csv",na.strings = c("NA","","unknown"),colClasses = "character")
|
||||
|
||||
library(REDCapR)
|
||||
library(lubridate)
|
||||
library(dplyr)
|
||||
library(daDoctoR)
|
||||
|
||||
# source("https://raw.githubusercontent.com/agdamsbo/daDoctoR/master/R/dob_extract_cpr_function.R")
|
||||
|
||||
dta <- redcap_read_oneshot(
|
||||
redcap_uri = "https://redcap.au.dk/api/",
|
||||
token = read.csv("/Users/au301842/talos_redcap_token.csv",header = FALSE)[[1]],
|
||||
fields = c("talos_basis02a", #Indlæggelsesdato
|
||||
"cpr",
|
||||
"talos_nihss16_0", #Akut NIHSS
|
||||
"basis_kon",
|
||||
"reg_hojde", #Alle fra "reg(ister/DAP)"
|
||||
"reg_vaegt",
|
||||
"reg_vaegt_anslaaet",
|
||||
"reg_rygning",
|
||||
"reg_alkohol",
|
||||
"reg_civil",
|
||||
"reg_bolig",
|
||||
"reg_diabetes",
|
||||
"reg_hyperten",
|
||||
"reg_perifer_arteriel",
|
||||
"reg_atriefli",
|
||||
"reg_ami",
|
||||
"reg_tidl_tci",
|
||||
"reg_trombolyse",
|
||||
"reg_trombektomi",
|
||||
"rtreat" #Trial treatment
|
||||
)
|
||||
)$data |>
|
||||
mutate(age=time_length(talos_basis02a-dob_extract_cpr(cpr),
|
||||
unit="year")
|
||||
)|>
|
||||
select(!c("cpr"))
|
||||
|
||||
|
||||
|
||||
|
||||
## Cleaning and enhancing
|
||||
dta$pase_drop<-factor(ifelse((dta$pase_0_q=="q_2"|dta$pase_0_q=="q_3"|dta$pase_0_q=="q_4")&dta$pase_06_q=="q_1","yes","no"),levels = c("no","yes"))
|
||||
dta$pase_drop[is.na(dta$pase_6)]<-NA
|
||||
dta$pase_drop[is.na(dta$pase_0)]<-NA
|
||||
|
||||
## Selection of data set and formatting
|
||||
library(dplyr)
|
||||
dta_f<-dta %>% filter(pase_0_q != "q_1" & !is.na(pase_drop))
|
||||
|
||||
|
||||
variable_names<-c("age","sex","weight","height",
|
||||
"bmi",
|
||||
"smoke_ever",
|
||||
"civil",
|
||||
"diabetes",
|
||||
"hypertension",
|
||||
"pad",
|
||||
"afli",
|
||||
"ami",
|
||||
"tci",
|
||||
"nihss_0",
|
||||
"thrombolysis",
|
||||
"thrombechtomy",
|
||||
"rep_any","pase_0_q","pase_drop")
|
||||
|
||||
|
||||
library(daDoctoR)
|
||||
dta2<-dta_f[,variable_names]
|
||||
|
||||
dta2<-col_num(c("age","weight","height","bmi","nihss_0"),dta2)
|
||||
dta2<-col_fact(c("sex","smoke_ever","civil","diabetes", "hypertension","pad", "afli", "ami", "tci","thrombolysis", "thrombechtomy","rep_any","pase_0_q","pase_drop"),dta2)
|
||||
|
||||
## Partitioning
|
||||
library(caret)
|
||||
set.seed(100)
|
||||
|
||||
## Step 1: Get row numbers for the training data
|
||||
trainRowNumbers <- createDataPartition(dta2$pase_drop, p=0.8, list=FALSE)
|
||||
|
||||
## Step 2: Create the training dataset
|
||||
trainData <- dta2[trainRowNumbers,]
|
||||
|
||||
## Step 3: Create the test dataset
|
||||
testData <- dta2[-trainRowNumbers,]
|
||||
y_test = testData[,"pase_drop"]
|
||||
|
||||
# Store X and Y for later use.
|
||||
x = trainData %>% select(!matches("pase_drop"))
|
||||
y = trainData[,"pase_drop"]
|
||||
|
||||
# Normalization and dummy binaries
|
||||
|
||||
# One-Hot Encoding
|
||||
# Creating dummy variables is converting a categorical variable to as many binary variables as here are categories.
|
||||
dummies_model <- dummyVars(pase_drop ~ ., data=trainData)
|
||||
|
||||
# Create the dummy variables using predict. The Y variable (Purchase) will not be present in trainData_mat.
|
||||
trainData_mat <- predict(dummies_model, newdata = trainData)
|
||||
|
||||
# # Convert to dataframe
|
||||
trainData <- data.frame(trainData_mat)
|
||||
|
||||
# # See the structure of the new dataset
|
||||
str(trainData)
|
||||
|
||||
dummies_model <- dummyVars(pase_drop ~ ., data=testData)
|
||||
testData_mat <- predict(dummies_model, newdata = testData)
|
||||
testData <- data.frame(testData_mat)
|
||||
preProcess_range_model <- preProcess(testData, method='range')
|
||||
testData <- predict(preProcess_range_model, newdata = testData)
|
||||
testData$pase_drop<-y_test
|
||||
|
||||
# Imputation
|
||||
|
||||
library(RANN) # required for knnInpute
|
||||
preProcess_missingdata_model <- preProcess(trainData, method='knnImpute')
|
||||
# preProcess_missingdata_model
|
||||
|
||||
trainData <- predict(preProcess_missingdata_model, newdata = trainData) # Giver fejl??
|
||||
anyNA(trainData)
|
||||
|
||||
# skimr::skim(trainData)
|
||||
# skimr::skim(x)
|
||||
|
||||
preProcess_range_model <- preProcess(trainData, method='range')
|
||||
trainData <- predict(preProcess_range_model, newdata = trainData)
|
||||
|
||||
# Append the Y variable
|
||||
trainData$pase_drop <- y
|
||||
|
||||
|
||||
# Export
|
||||
write.csv(trainData,"/Users/au301842/PhysicalActivityandStrokeOutcome/data/trainData.csv",row.names = FALSE)
|
||||
write.csv(testData,"/Users/au301842/PhysicalActivityandStrokeOutcome/data/testData.csv",row.names = FALSE)
|
||||
BIN
1 PA Decline/archive/generation_1/pc_plot.png
Normal file
|
After Width: | Height: | Size: 317 KiB |
117
1 PA Decline/archive/generation_1/regular_fun.R
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
## ItMLiHSmar2022
|
||||
## regular_fun.R, child script
|
||||
## Regularisation model building function
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
regular_fun<-function(X,y,K,lambdas,alpha){
|
||||
n<-nrow(X)
|
||||
set.seed(321)
|
||||
|
||||
# Using caret function to ensure both levels represented in all folds
|
||||
c<-createFolds(y=y, k = K, list = FALSE, returnTrain = TRUE)
|
||||
|
||||
B<-yhatTestProbKeep<-list()
|
||||
accTrain<-accTest<-err_train<-err_test<-auc_train<-auc_test<-matrix(nrow = K,ncol = length(lambdas))
|
||||
|
||||
catinfo<-levels(y)
|
||||
|
||||
cMatTrain<-cMatTest<-table(true=factor(c(0,0),levels=catinfo),pred=factor(c(0,0),levels=catinfo))
|
||||
|
||||
|
||||
## Iterate over partitions
|
||||
for (idx1 in 1:K){
|
||||
|
||||
# Status
|
||||
cat('Processing fold', idx1, 'of', K,'\n')
|
||||
|
||||
# idx1=1
|
||||
# Get training- and test sets
|
||||
I_train = c!=idx1 ## Creating selection vector of TRUE/FALSE
|
||||
I_test = !I_train
|
||||
|
||||
Xtrain = X[I_train,]
|
||||
ytrain = y[I_train]
|
||||
Xtest = X[I_test,]
|
||||
ytest = y[I_test]
|
||||
|
||||
|
||||
## Model matrices for glmnet
|
||||
## Using the complicated approach not to include first level.
|
||||
# Xmat.train<-model.matrix(~ .-1, data=Xtrain,
|
||||
# contrasts.arg = lapply(Xtrain[,sapply(Xtrain, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
# Xmat.test<-model.matrix(~ .-1, data=Xtest,
|
||||
# contrasts.arg = lapply(Xtest[,sapply(Xtest, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
|
||||
# Xmat.train<-model.matrix(~.-1,Xtrain)
|
||||
# Xmat.test<-model.matrix(~.-1,Xtest)
|
||||
|
||||
# Weights
|
||||
ytrain_weight<-as.vector(1 - (table(ytrain)[ytrain] / length(ytrain)))
|
||||
# ytest_weight<-as.vector(1 / (table(ytest)[ytest] / length(ytest)))
|
||||
|
||||
# Fit regularized linear regression model
|
||||
mod<-glmnet(Xtrain, ytrain,
|
||||
alpha = alpha, ## Alpha = 1 for lasso
|
||||
lambda = lambdas, ## Setting lambdas
|
||||
standardize = TRUE, ## Scales and centers
|
||||
weights = ytrain_weight,
|
||||
family = "binomial"
|
||||
)
|
||||
|
||||
# Keep coefficients for plot
|
||||
B[[idx1]] <- as.matrix(coef(mod))
|
||||
|
||||
# Iterate over regularization strengths to compute training- and test
|
||||
# errors for individual regularization strengths.
|
||||
for (idx2 in 1:length(lambdas)){
|
||||
# idx2=1
|
||||
|
||||
# Predict
|
||||
yhatTrainProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtrain),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
yhatTestProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtest),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
# Compute training and test error
|
||||
yhatTrain = round(yhatTrainProb)
|
||||
yhatTest = round(yhatTestProb)
|
||||
|
||||
# Make predictions categorical again (instead of 0/1 coding)
|
||||
yhatTrainCat = factor(round(yhatTrainProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
yhatTestCat = factor(round(yhatTestProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
|
||||
# Evaluate classifier performance
|
||||
# Accuracy
|
||||
# accTrain[idx1,idx2] <- sum(yhatTrainCat==ytrain)/length(ytrain)
|
||||
# accTest [idx1,idx2] <- sum(yhatTestCat==ytest)/length(ytest)
|
||||
# #
|
||||
# # Error rate
|
||||
# err_train[idx1,idx2] = 1 - accTrain[idx1,idx2]
|
||||
# err_test [idx1,idx2] = 1 - accTest[idx1,idx2]
|
||||
|
||||
# AUROC
|
||||
suppressMessages(
|
||||
auc_train[idx1,idx2]<-auc(ytrain, yhatTrainCat))
|
||||
suppressMessages(
|
||||
auc_test [idx1,idx2]<-auc(ytest, yhatTestCat))
|
||||
|
||||
# Compute confusion matrices
|
||||
cMatTrain = cMatTrain + table(true=ytrain,pred=yhatTrainCat)
|
||||
cMatTest = cMatTest + table(true=ytest,pred=yhatTestCat)
|
||||
}
|
||||
}
|
||||
ls<-list(mod=mod,B=B,auc_train=auc_train,auc_test=auc_test,cMatTrain=cMatTrain,cMatTest=cMatTest)
|
||||
return(ls)
|
||||
}
|
||||
142
1 PA Decline/archive/generation_1/regularisation_steps.R
Normal file
|
|
@ -0,0 +1,142 @@
|
|||
## ItMLiHSmar2022
|
||||
## regularisation_steps.R, child script
|
||||
## Regularised model building and analysation for assignment
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
## Step 0: data import and wrangling
|
||||
## ====================================================================
|
||||
|
||||
setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
# source("data_format.R")
|
||||
y1<-factor(as.integer(y)-1) ## Outcome is required to be factor of 0 or 1.
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 1: settings
|
||||
## ====================================================================
|
||||
|
||||
## Folds
|
||||
K=10
|
||||
set.seed(3)
|
||||
c<-caret::createFolds(y=y,
|
||||
k = K,
|
||||
list = FALSE,
|
||||
returnTrain = TRUE) # Foldids for alpha tuning
|
||||
|
||||
## Defining tuning parameters
|
||||
lambdas=2^seq(-10, 5, 1)
|
||||
alphas<-seq(0,1,.1)
|
||||
|
||||
## Weights for models
|
||||
weighted=TRUE
|
||||
if (weighted == TRUE) {
|
||||
wght<-as.vector(1 - (table(y)[y] / length(y)))
|
||||
} else {
|
||||
wght <- rep(1, nrow(y))
|
||||
}
|
||||
|
||||
|
||||
## Standardise numeric
|
||||
## Centered and
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 2: all cross validations for each alpha
|
||||
## ====================================================================
|
||||
|
||||
library(furrr)
|
||||
library(purrr)
|
||||
library(doMC)
|
||||
registerDoMC(cores=6)
|
||||
|
||||
# Nested CVs with analysis for all lambdas for each alpha
|
||||
#
|
||||
set.seed(3)
|
||||
cvs <- future_map(alphas, function(a){
|
||||
cv.glmnet(model.matrix(~.-1,X),
|
||||
y1,
|
||||
weights = wght,
|
||||
lambda=lambdas,
|
||||
type.measure = "deviance", # This is standard measure and recommended for tuning
|
||||
foldid = c, # Per recommendation the folds are kept for alpha optimisation
|
||||
alpha=a,
|
||||
standardize=TRUE,
|
||||
family=quasibinomial,
|
||||
keep=TRUE) # Same as binomial, but not as picky
|
||||
})
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: optimum lambda for each alpha
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# For each alpha, lambda is chosen for the lowest meassure (deviance)
|
||||
each_alpha <- sapply(seq_along(alphas), function(id) {
|
||||
each_cv <- cvs[[id]]
|
||||
alpha_val <- alphas[id]
|
||||
index_lmin <- match(each_cv$lambda.min,
|
||||
each_cv$lambda)
|
||||
c(lamb = each_cv$lambda.min,
|
||||
alph = alpha_val,
|
||||
cvm = each_cv$cvm[index_lmin])
|
||||
})
|
||||
|
||||
# Best lambda
|
||||
best_lamb <- min(each_alpha["lamb", ])
|
||||
|
||||
# Alpha is chosen for best lambda with lowest model deviance, each_alpha["cvm",]
|
||||
best_alph <- each_alpha["alph",][each_alpha["cvm",]==min(each_alpha["cvm",]
|
||||
[each_alpha["lamb",] %in% best_lamb])]
|
||||
|
||||
## https://stackoverflow.com/questions/42007313/plot-an-roc-curve-in-r-with-ggplot2
|
||||
p_roc<-roc.glmnet(cvs[[1]]$fit.preval, newy = y)[[match(best_alph,alphas)]]|> # Plots performance from model with best alpha
|
||||
ggplot(aes(FPR,TPR)) +
|
||||
geom_step() +
|
||||
coord_cartesian(xlim=c(0,1), ylim=c(0,1)) +
|
||||
geom_abline()+
|
||||
theme_bw()
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Creating the final model
|
||||
## ====================================================================
|
||||
|
||||
source("regular_fun.R") # Custom function
|
||||
optimised_model<-regular_fun(X,y1,K,lambdas=best_lamb,alpha=best_alph)
|
||||
# With lambda and alpha specified, the function is just a k-fold cross-validation wrapper,
|
||||
# but keeps model performance figures from each fold.
|
||||
|
||||
list2env(optimised_model,.GlobalEnv)
|
||||
# Function outputs a list, which is unwrapped to Env.
|
||||
# See source script for reference.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: creating table of coefficients for inference
|
||||
## ====================================================================
|
||||
|
||||
Bmatrix<-matrix(unlist(B),ncol=10)
|
||||
Bmedian<-apply(Bmatrix,1,median)
|
||||
Bmean<-apply(Bmatrix,1,mean)
|
||||
|
||||
reg_coef_tbl<-tibble(
|
||||
name = c("Intercept",Hmisc::label(X)),
|
||||
medianX = round(Bmedian,5),
|
||||
ORmed = round(exp(Bmedian),5),
|
||||
meanX = round(Bmean,5),
|
||||
ORmea = round(exp(Bmean),5))%>%
|
||||
# arrange(desc(abs(medianX)))%>%
|
||||
gt()
|
||||
|
||||
reg_coef_tbl
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: plotting predictive performance
|
||||
## ====================================================================
|
||||
|
||||
reg_cfm<-confusionMatrix(cMatTest)
|
||||
reg_auc_sum<-summary(auc_test[,1])
|
||||
BIN
1 PA Decline/archive/generation_1/roc_plot.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
72
1 PA Decline/archive/generation_1/sankey.R
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
#
|
||||
# Sankey plot of quartile movement for drops
|
||||
#
|
||||
|
||||
gth<-X_tbl[,c("pase_0_cut","pase_6_cut","pase_drop_fac")]
|
||||
|
||||
gth$pase_drop_fac <- factor(ifelse(gth$pase_0_cut=="1",
|
||||
"low",
|
||||
gth$pase_drop_fac),
|
||||
labels = c("no","yes","low")) # Tried and tried to do vectorised, but failed. Matrices acting up..
|
||||
|
||||
# Visuals - sankey
|
||||
# https://stackoverflow.com/questions/50395027/beautifying-sankey-alluvial-visualization-using-r
|
||||
|
||||
|
||||
## Painting
|
||||
# LOOK AT THIS GREAT FUNCTION!! Wide pivot format. Includes factor for possible quartile-colouring.
|
||||
|
||||
df<-data.frame(gth %>% count(pase_0_cut,pase_6_cut,pase_drop_fac))
|
||||
|
||||
lbs0<-c(paste0("1st\n(n=",sum(df$n[df[1]=="1"]),")"),
|
||||
paste0("2nd\n(n=",sum(df$n[df[1]=="2"]),")"),
|
||||
paste0("3rd\n(n=",sum(df$n[df[1]=="3"]),")"),
|
||||
paste0("4th\n(n=",sum(df$n[df[1]=="4"]),")"))
|
||||
|
||||
lbs6<-c(paste0("1st\n(n=",sum(df$n[df[2]=="1"]),")"),
|
||||
paste0("2nd\n(n=",sum(df$n[df[2]=="2"]),")"),
|
||||
paste0("3rd\n(n=",sum(df$n[df[2]=="3"]),")"),
|
||||
paste0("4th\n(n=",sum(df$n[df[2]=="4"]),")"))
|
||||
|
||||
df[1:2] <- as_factor(df[1:2])
|
||||
|
||||
levels(df[,1])<-lbs0[1:length(levels(df[,1]))]
|
||||
levels(df[,2])<-lbs6[1:length(levels(df[,2]))]
|
||||
|
||||
df[,3]<-factor(df[,3],levels=c("low","no","yes"))
|
||||
|
||||
|
||||
lows <- "grey80" # grey
|
||||
drops <- "#990033" # Midtrød
|
||||
nos <- "grey50"
|
||||
nas <- "grey90"
|
||||
border<- "#66c1a3"
|
||||
box <- "#7fccb2"
|
||||
|
||||
cls <- c(lows,nos,drops)
|
||||
alpha <- 0.7
|
||||
|
||||
library(ggalluvial)
|
||||
(p_delta<-ggplot(df,aes(y = n, axis1 = pase_0_cut, axis2 = pase_6_cut)) +
|
||||
geom_alluvium(aes(fill = pase_drop_fac, color=pase_drop_fac), width = 1/10, alpha = alpha, knot.pos = 0.3)+
|
||||
geom_stratum(width = 1/6, fill = box, color = border) +
|
||||
geom_text(stat = "stratum", aes(label=after_stat(stratum))) +
|
||||
scale_x_continuous(breaks = 1:2, labels = c("Pre-stroke\nPASE score\nquartiles", "Six months\nPASE score\nquartiles")) +
|
||||
scale_fill_manual(values = cls) +
|
||||
scale_color_manual(values = cls) +
|
||||
scale_y_reverse() + # Easy solution to flip y-axis
|
||||
labs(title="Change in physical activity") +
|
||||
ylab("Quartiles")+
|
||||
theme_minimal() +
|
||||
theme(legend.position = "none",
|
||||
panel.grid.major = element_blank(),
|
||||
panel.grid.minor = element_blank(),
|
||||
axis.text.y = element_blank(),
|
||||
axis.title.y = element_blank(),
|
||||
axis.text.x = element_text(size = 14, face = "bold"),
|
||||
plot.title = element_text(hjust = 0.5, size = 20, face = "bold")))
|
||||
|
||||
ggsave("sankey.png", plot = last_plot(), device = NULL, path = NULL,
|
||||
scale = 1, width = 120, height = 200, dpi = 450, limitsize = TRUE,
|
||||
units = "mm")
|
||||
|
||||
BIN
1 PA Decline/archive/generation_1/sankey.png
Normal file
|
After Width: | Height: | Size: 695 KiB |
41
1 PA Decline/archive/generation_1/standardise.R
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
## ItMLiHSmar2022
|
||||
## standardise.R, child script
|
||||
## Data standardisation, returns list
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
|
||||
standardise<-function(train,test,type){
|
||||
# From:
|
||||
# https://datascience.stackexchange.com/questions/13971/standardization-normalization-test-data-in-r
|
||||
|
||||
sel<-sapply(Xtrain,is.numeric) # Deciding which to stadardise (only numeric)
|
||||
cnm<-colnames(Xtrain) # Saving column names for ordering
|
||||
|
||||
# Subsetting
|
||||
|
||||
## Data to treat
|
||||
train.tr<-train[,sel]
|
||||
test.tr<-test[,sel]
|
||||
|
||||
## Data to save
|
||||
train.sv<-train[,!sel]
|
||||
test.sv<-test[,!sel]
|
||||
|
||||
# Calculate mean and SD of train data
|
||||
trainMean <- sapply(train.tr,mean)
|
||||
trainSd <- sapply(train.tr,sd)
|
||||
|
||||
if (type=="c"){
|
||||
## centered
|
||||
norm.trainData<-sweep(train.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
norm.testData<-sweep(test.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
}
|
||||
|
||||
if (type=="cs"){
|
||||
## centered AND scaled (Z-score standardisation)
|
||||
norm.trainData<-sweep(sweep(train.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
norm.testData<-sweep(sweep(test.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
}
|
||||
return(list(XtrainSt=cbind(norm.trainData,train.sv)[,cnm], # Reordering columns to original
|
||||
XtestSt=cbind(norm.testData,test.sv)[,cnm]))
|
||||
}
|
||||
|
||||
737
1 PA Decline/archive/generation_1/table1.RTF
Normal file
|
|
@ -0,0 +1,737 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 {\b Characteristic}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 {\b N}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 {\b Overall}, N = 391{\super \i 1}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 {\b no}, N = 314{\super \i 1}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 {\b yes}, N = 77{\super \i 1}}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Age}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 66 (57;74) [24,90]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 64 (56;72) [24,87]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 72 (66;79) [31,90]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Male}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 275 (70%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 227 (72%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 48 (62%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Living alone}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 385}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 107 (28%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 70 (23%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 37 (49%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke PASE score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 167 (122;225) [85,574]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 174 (135;231) [85,574]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 123 (103;184) [85,407]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Daily or occasinally smoking}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 119 (30%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 90 (29%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 29 (38%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 More alcohol than recommendation}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 381}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 34 (8.9%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 25 (8.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 9 (12%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 AFIB}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 386}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 57 (15%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 45 (15%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12 (16%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Hypertension}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 387}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 184 (48%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 139 (45%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 45 (59%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Diabetes}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 37 (9.5%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 29 (9.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8 (10%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PAD}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 12 (3.1%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 8 (2.5%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 4 (5.2%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Previous MI}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 33 (8.4%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 24 (7.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 9 (12%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Previous TIA}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 386}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 8 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 2 (2.7%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 1}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 348 (89%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 284 (90%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 64 (83%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 2}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 32 (8.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 25 (8.0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 7 (9.1%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 3}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 5 (1.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 5 (6.5%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 4}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 1 (0.3%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 1 (1.3%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Acute NIHSS score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 388}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;5.0) [0.0,32.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;5.0) [0.0,32.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;7.0) [0.0,22.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Any reperfusion therapy}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 151 (39%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 123 (39%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 28 (36%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Active trial treatment}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 190 (49%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 147 (47%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 43 (56%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Six month PASE score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 159 (101;225) [0,486]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 180 (135;240) [86,486]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 57 (34;68) [0,83]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 390}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 157 (40%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 136 (43%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 21 (27%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (General fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 378}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12.0 (8.0;15.2) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Physical fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 376}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;14.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 9.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 13.0 (7.8;17.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced activity)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 377}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 9.0 (6.0;12.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12.0 (9.0;16.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced motivation)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 378}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 7.00 (5.00;9.00) [4.00,20.00]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 7.00 (5.00;9.00) [4.00,16.00]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.00 (5.00;12.00) [4.00,20.00]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Mental fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 373}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 7.0 (4.0;11.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 7.0 (4.0;10.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.0 (5.0;12.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MDI}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 381}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 5.0 (3.0;9.0) [0.0,45.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 5.0 (2.0;8.0) [0.0,37.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.0 (4.0;15.0) [0.0,45.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month WHO5}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 385}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 76 (64;88) [0,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 76 (64;88) [0,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 70 (48;88) [0,100]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE absolute decline}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 19 (-43;69) [-272,407]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 1 (-55;38) [-272,349]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 77 (45;127) [7,407]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE relative decline}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (-25;38) [-221,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 1 (-34;22) [-221,68]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 60 (41;75) [8,100]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE score difference, relative F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE score difference, absolute F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE 0 quartiles}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 130 (33%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 83 (26%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 47 (61%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE 6 quartiles}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 82 (21%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 82 (26%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE first quartile drop F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE first quartile hop F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 {\super \i 1}Median (25%;75%) [Minimum,Maximum]; n (%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
737
1 PA Decline/archive/generation_1/table1_overall.RTF
Normal file
|
|
@ -0,0 +1,737 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 {\b Characteristic}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 {\b N}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 {\b Overall}, N = 391{\super \i 1}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 {\b no}, N = 314{\super \i 1}}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf1 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 {\b yes}, N = 77{\super \i 1}}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Age}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 66 (57;74) [24,90]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 64 (56;72) [24,87]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 72 (66;79) [31,90]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Male}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 275 (70%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 227 (72%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 48 (62%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Living alone}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 385}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 107 (28%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 70 (23%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 37 (49%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke PASE score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 167 (122;225) [85,574]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 174 (135;231) [85,574]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 123 (103;184) [85,407]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Daily or occasinally smoking}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 119 (30%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 90 (29%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 29 (38%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 More alcohol than recommendation}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 381}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 34 (8.9%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 25 (8.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 9 (12%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 AFIB}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 386}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 57 (15%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 45 (15%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12 (16%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Hypertension}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 387}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 184 (48%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 139 (45%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 45 (59%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Diabetes}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 37 (9.5%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 29 (9.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8 (10%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PAD}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 12 (3.1%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 8 (2.5%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 4 (5.2%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Previous MI}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 33 (8.4%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 24 (7.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 9 (12%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Previous TIA}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 386}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 8 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 2 (2.7%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 1}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 348 (89%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 284 (90%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 64 (83%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 2}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 32 (8.2%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 25 (8.0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 7 (9.1%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 3}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (2.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 5 (1.6%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 5 (6.5%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 4}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 1 (0.3%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 1 (1.3%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Acute NIHSS score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 388}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;5.0) [0.0,32.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;5.0) [0.0,32.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 3.0 (2.0;7.0) [0.0,22.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Any reperfusion therapy}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 151 (39%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 123 (39%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 28 (36%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Active trial treatment}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 190 (49%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 147 (47%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 43 (56%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 Six month PASE score}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 159 (101;225) [0,486]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 180 (135;240) [86,486]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 57 (34;68) [0,83]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 390}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 157 (40%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 136 (43%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 21 (27%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (General fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 378}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12.0 (8.0;15.2) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Physical fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 376}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;14.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 9.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 13.0 (7.8;17.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced activity)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 377}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10.0 (7.0;13.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 9.0 (6.0;12.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 12.0 (9.0;16.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced motivation)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 378}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 7.00 (5.00;9.00) [4.00,20.00]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 7.00 (5.00;9.00) [4.00,16.00]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.00 (5.00;12.00) [4.00,20.00]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Mental fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 373}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 7.0 (4.0;11.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 7.0 (4.0;10.0) [4.0,20.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.0 (5.0;12.0) [4.0,20.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month MDI}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 381}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 5.0 (3.0;9.0) [0.0,45.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 5.0 (2.0;8.0) [0.0,37.0]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 8.0 (4.0;15.0) [0.0,45.0]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 One month WHO5}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 385}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 76 (64;88) [0,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 76 (64;88) [0,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 70 (48;88) [0,100]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE absolute decline}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 19 (-43;69) [-272,407]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 1 (-55;38) [-272,349]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 77 (45;127) [7,407]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE relative decline}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 10 (-25;38) [-221,100]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 1 (-34;22) [-221,68]}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 60 (41;75) [8,100]}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE score difference, relative F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE score difference, absolute F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE 0 quartiles}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 130 (33%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 83 (26%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 47 (61%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE 6 quartiles}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 82 (21%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 82 (26%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE first quartile drop F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1872
|
||||
\intbl {\f0 {\f0\fs20 PASE first quartile hop F}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3744
|
||||
\intbl {\f0 {\f0\fs20 391}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5616
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7488
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0 (0%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 {\super \i 1}Median (25%;75%) [Minimum,Maximum]; n (%)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
491
1 PA Decline/archive/generation_1/table2.RTF
Normal file
|
|
@ -0,0 +1,491 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red51\green51\blue51;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0\cf1 {\f0\fs20 Model coefficients} {\f0\fs20\i\super } \line {\f0\fs20 Combined table of both full and regularised model coefficients} {\f0\fs20\i\super }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmgf \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=1, l=0.031)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=1, l=0.031)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=1, l=0.031)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=1, l=0.031)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmgf \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 name}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 medianX}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 ORmed}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 meanX}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 ORmea}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 coefs}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 OR}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 CIs}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Intercept}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 -3.732}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 0.024}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 -3.773}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 0.023}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -1.023}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.360}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.174,0.757)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Age}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.025}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.026}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.027}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.027}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.484}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.622}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.259,2.124)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Male}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 -0.023}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 0.977}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.253}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.777}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.445,1.378)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Living alone}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.884}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 2.422}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.888}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 2.431}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 1.170}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 3.224}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.874,5.693)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Daily or occasinally smoking}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.156}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.169}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.161}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.175}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.546}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.727}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.022,3.04)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 More alcohol than recommendation}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.300}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.350}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.583,3.27)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 AFIB}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.060}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.942}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.472,1.889)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Hypertension}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.083}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.086}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.100}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.105}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.361}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.434}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.871,2.382)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Diabetes}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.015}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.015}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.437,2.396)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 PAD}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.005}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.005}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.514}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.673}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.4,9.834)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Previous MI}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.047}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.049}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.062}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.064}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.516}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.676}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.727,4.083)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.020}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.020}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.271}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.311}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.608,2.904)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Acute NIHSS score}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.033}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.034}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.037}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.037}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.315}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.370}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.066,1.788)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Any reperfusion therapy}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.020}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.980}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.571,1.706)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Active trial treatment}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.062}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.064}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.106}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.111}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.380}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.462}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.897,2.445)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
715
1 PA Decline/archive/generation_1/table2_sec.RTF
Normal file
|
|
@ -0,0 +1,715 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red51\green51\blue51;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0\cf1 {\f0\fs20 Model coefficients} {\f0\fs20\i\super } \line {\f0\fs20 Combined table of both full and regularised model coefficients} {\f0\fs20\i\super }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 }}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmgf \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=0.9, l=0.062)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=0.9, l=0.062)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=0.9, l=0.062)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 Regularised model, (a=0.9, l=0.062)}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmgf \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2\clmrg \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 Full model}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 name}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 medianX}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 ORmed}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 meanX}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 ORmea}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 coefs}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 OR}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 CIs}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Intercept}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 -0.890}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 0.411}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 -0.949}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 0.387}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -1.203}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.300}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.112,0.808)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Age}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.004}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.373}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.452}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.147,1.857)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Male}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.014}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.014}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.597,1.745)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Living alone}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.186}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.204}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.208}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.231}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.702}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 2.017}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.23,3.377)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Daily or occasinally smoking}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.003}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.003}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.403}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.496}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.927,2.479)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 More alcohol than recommendation}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.154}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.857}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.389,1.898)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 AFIB}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.165}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.848}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.451,1.612)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Hypertension}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.241}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.273}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.8,2.07)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Diabetes}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.193}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.824}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.385,1.788)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 PAD}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.169}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.845}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.245,3.202)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Previous MI}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.591}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.807}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.802,4.422)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Pre-stroke mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 -0.028}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 0.973}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.843}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.430}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.219,0.892)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Acute NIHSS score}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.001}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.001}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.323}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.382}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.084,1.787)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Any reperfusion therapy}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.177}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.838}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.496,1.423)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 Active trial treatment}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.007}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.007}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.343}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.409}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.897,2.25)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month mRS [-1]}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.077}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.080}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.572}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.773}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.876,4.094)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (General fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.565}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.568}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.396,0.808)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Physical fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.214}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.238}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.894,1.729)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced activity)}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.002}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.002}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.072}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.074}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.765,1.516)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Reduced motivation)}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.102}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.107}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.844,1.457)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MFI (Mental fatigue)}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.093}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.097}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.853,1.42)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month MDI}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.027}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.028}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.025}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.025}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 0.490}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 1.632}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (1.193,2.299)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx1170
|
||||
\intbl {\f0 {\f0\fs20 One month WHO5}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx2340
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3510
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx4680
|
||||
\intbl {\f0 {\f0\fs20 0.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx5850
|
||||
\intbl {\f0 {\f0\fs20 1.000}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx7020
|
||||
\intbl {\f0 {\f0\fs20 -0.108}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx8190
|
||||
\intbl {\f0 {\f0\fs20 0.898}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 (0.653,1.239)}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
184
1 PA Decline/archive/generation_1/table3.RTF
Normal file
|
|
@ -0,0 +1,184 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red51\green51\blue51;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0\cf1 {\f0\fs20 Performance meassures} {\f0\fs20\i\super } \line {\f0\fs20 Combined table of both full and regularised performance meassures} {\f0\fs20\i\super }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Meassure}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 Regularised.model}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 Full.model}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Sensitivity}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.862}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.864}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Specificity}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.290}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.281}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Pos Pred Value}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.712}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.671}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Neg Pred Value}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.507}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.549}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Precision}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.712}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.671}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Recall}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.862}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.864}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 F1}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.780}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.756}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Prevalence}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.671}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.629}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Detection Rate}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.578}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.544}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Detection Prevalence}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.812}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.811}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Balanced Accuracy}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.576}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.572}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Mean AUC}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.607}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.609}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
184
1 PA Decline/archive/generation_1/table3_sec.RTF
Normal file
|
|
@ -0,0 +1,184 @@
|
|||
{\rtf\ansi\ansicpg1252{\fonttbl{\f0\froman\fcharset0\fprq0 Courier New;}{\f1\froman\fcharset0\fprq0 Times;}}{\colortbl;\red51\green51\blue51;\red211\green211\blue211;}
|
||||
|
||||
\paperw12240\paperh15840\widowctrl\ftnbj\fet0\sectd\linex0
|
||||
\lndscpsxn
|
||||
\margl1440\margr1440\margt1440\margb1440
|
||||
\headery720\footery720\fs20
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\qc\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0\cf1 {\f0\fs20 Performance meassures} {\f0\fs20\i\super } \line {\f0\fs20 Combined table of both full and regularised performance meassures} {\f0\fs20\i\super }}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0\trhdr
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Meassure}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 Regularised.model}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85\clbrdrb\brdrs\brdrw20\brdrcf2 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 Full.model}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Sensitivity}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.890}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.896}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Specificity}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.184}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.201}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Pos Pred Value}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.646}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.672}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Neg Pred Value}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.500}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.516}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Precision}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.646}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.672}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Recall}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.890}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.896}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 F1}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.749}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.768}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Prevalence}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.626}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.646}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Detection Rate}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.557}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.579}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Detection Prevalence}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.862}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.862}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Balanced Accuracy}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.537}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.549}}\cell
|
||||
|
||||
\row
|
||||
|
||||
\trowd\trrh0
|
||||
|
||||
\pard\plain\uc0\ql\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx3120
|
||||
\intbl {\f0 {\f0\fs20 Mean AUC}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx6240
|
||||
\intbl {\f0 {\f0\fs20 0.577}}\cell
|
||||
|
||||
\pard\plain\uc0\qr\clvertalc \clpadfl3\clpadl25 \clpadft3\clpadt85 \clpadfb3\clpadb25 \clpadfr3\clpadr85 \cellx9360
|
||||
\intbl {\f0 {\f0\fs20 0.594}}\cell
|
||||
|
||||
\row
|
||||
|
||||
}
|
||||
142
1 PA Decline/archive/prediction exercise.R
Normal file
|
|
@ -0,0 +1,142 @@
|
|||
# https://www.machinelearningplus.com/machine-learning/caret-package/
|
||||
|
||||
# install.packages(c('caret', 'skimr', 'RANN', 'randomForest', 'fastAdaboost', 'gbm', 'xgboost', 'caretEnsemble', 'C50', 'earth'))
|
||||
|
||||
# Load the caret package
|
||||
library(caret)
|
||||
|
||||
# Import dataset
|
||||
orange <- read.csv('https://raw.githubusercontent.com/selva86/datasets/master/orange_juice_withmissing.csv')
|
||||
|
||||
# Structure of the dataframe
|
||||
str(orange)
|
||||
|
||||
# See top 6 rows and 10 columns
|
||||
head(orange[, 1:10])
|
||||
|
||||
# Create the training and test datasets
|
||||
set.seed(100)
|
||||
|
||||
# Step 1: Get row numbers for the training data
|
||||
trainRowNumbers <- createDataPartition(orange$Purchase, p=0.8, list=FALSE)
|
||||
|
||||
# Step 2: Create the training dataset
|
||||
trainData <- orange[trainRowNumbers,]
|
||||
|
||||
# Step 3: Create the test dataset
|
||||
testData <- orange[-trainRowNumbers,]
|
||||
|
||||
# Store X and Y for later use.
|
||||
x = trainData[, 2:18]
|
||||
y = trainData$Purchase
|
||||
|
||||
library(skimr)
|
||||
skimmed <- skim(trainData)
|
||||
skimmed
|
||||
|
||||
# Create the knn imputation model on the training data
|
||||
preProcess_missingdata_model <- preProcess(trainData, method='knnImpute')
|
||||
preProcess_missingdata_model
|
||||
|
||||
# Use the imputation model to predict the values of missing data points
|
||||
library(RANN) # required for knnInpute
|
||||
trainData <- predict(preProcess_missingdata_model, newdata = trainData)
|
||||
anyNA(trainData)
|
||||
|
||||
# One-Hot Encoding
|
||||
# Creating dummy variables is converting a categorical variable to as many binary variables as here are categories.
|
||||
dummies_model <- dummyVars(Purchase ~ ., data=trainData)
|
||||
|
||||
# Create the dummy variables using predict. The Y variable (Purchase) will not be present in trainData_mat.
|
||||
trainData_mat <- predict(dummies_model, newdata = trainData)
|
||||
|
||||
# # Convert to dataframe
|
||||
trainData <- data.frame(trainData_mat)
|
||||
|
||||
# # See the structure of the new dataset
|
||||
str(trainData)
|
||||
|
||||
|
||||
preProcess_range_model <- preProcess(trainData, method='range')
|
||||
trainData <- predict(preProcess_range_model, newdata = trainData)
|
||||
|
||||
# Append the Y variable
|
||||
trainData$Purchase <- y
|
||||
|
||||
apply(trainData[, 1:10], 2, FUN=function(x){c('min'=min(x), 'max'=max(x))})
|
||||
|
||||
|
||||
featurePlot(x=trainData[,1:18],
|
||||
y=factor(trainData$Purchase),
|
||||
plot="box",
|
||||
strip=strip.custom(par.strip.text=list(cex=.7)),
|
||||
scales = list(x = list(relation="free"),
|
||||
y = list(relation="free")))
|
||||
|
||||
featurePlot(x=trainData[,1:18],
|
||||
y=factor(trainData$Purchase),
|
||||
plot="density",
|
||||
strip=strip.custom(par.strip.text=list(cex=.7)),
|
||||
scales = list(x = list(relation="free"),
|
||||
y = list(relation="free")))
|
||||
|
||||
# 5
|
||||
|
||||
set.seed(100)
|
||||
options(warn=-1)
|
||||
|
||||
subsets <- c(1:5, 10, 15, 18)
|
||||
|
||||
ctrl <- rfeControl(functions = rfFuncs,
|
||||
method = "repeatedcv",
|
||||
repeats = 5,
|
||||
verbose = FALSE)
|
||||
|
||||
lmProfile <- rfe(x=trainData[, 1:18], y=factor(trainData$Purchase),
|
||||
sizes = subsets,
|
||||
rfeControl = ctrl)
|
||||
|
||||
lmProfile
|
||||
|
||||
|
||||
# See available algorithms in caret
|
||||
modelnames <- dput(names(getModelInfo()))
|
||||
# modelnames <- paste(names(getModelInfo()), collapse=', ')
|
||||
modelnames
|
||||
|
||||
|
||||
# Set the seed for reproducibility
|
||||
set.seed(100)
|
||||
|
||||
# Train the model using randomForest and predict on the training data itself.
|
||||
model_mars = train(Purchase ~ ., data=trainData, method='earth')
|
||||
fitted <- predict(model_mars)
|
||||
|
||||
model_mars
|
||||
|
||||
|
||||
plot(model_mars, main="Model Accuracies with MARS")
|
||||
|
||||
varimp_mars <- varImp(model_mars)
|
||||
plot(varimp_mars, main="Variable Importance with MARS")
|
||||
|
||||
|
||||
## 6.4
|
||||
|
||||
# Step 1: Impute missing values
|
||||
testData2 <- predict(preProcess_missingdata_model, testData)
|
||||
|
||||
# Step 2: Create one-hot encodings (dummy variables)
|
||||
testData3 <- predict(dummies_model, testData2)
|
||||
|
||||
# Step 3: Transform the features to range between 0 and 1
|
||||
testData4 <- predict(preProcess_range_model, testData3)
|
||||
|
||||
# View
|
||||
head(testData4[, 1:10])
|
||||
|
||||
predicted <- predict(model_mars, testData4)
|
||||
head(predicted)
|
||||
|
||||
# Compute the confusion matrix
|
||||
confusionMatrix(reference = factor(testData$Purchase), data = predicted, mode='everything', positive='MM')
|
||||
101
1 PA Decline/archive/predictive_model.Rmd
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
---
|
||||
title: "predictive_model"
|
||||
output: pdf_document
|
||||
---
|
||||
|
||||
```{r setup, include=FALSE}
|
||||
knitr::opts_chunk$set(echo = TRUE)
|
||||
```
|
||||
|
||||
# Data
|
||||
```{r}
|
||||
library(caret)
|
||||
library(pROC)
|
||||
library(daDoctoR)
|
||||
library(dplyr)
|
||||
```
|
||||
|
||||
Import
|
||||
```{r}
|
||||
trainData<-read.csv("/Users/au301842/PhysicalActivityandStrokeOutcome/data/trainData.csv",)
|
||||
testData<-read.csv("/Users/au301842/PhysicalActivityandStrokeOutcome/data/testData.csv",)
|
||||
```
|
||||
|
||||
|
||||
# Prediction
|
||||
Inspiration: https://stackoverflow.com/questions/30366143/how-to-compute-roc-and-auc-under-roc-after-training-using-caret-in-r and https://www.machinelearningplus.com/machine-learning/caret-package/
|
||||
|
||||
## Early visualisation
|
||||
|
||||
```{r}
|
||||
featurePlot(x = trainData %>% select(!matches("pase_drop")),
|
||||
y = factor(trainData$pase_drop),
|
||||
plot = "box",
|
||||
strip=strip.custom(par.strip.text=list(cex=.7)),
|
||||
scales = list(x = list(relation="free"),
|
||||
y = list(relation="free")))
|
||||
|
||||
featurePlot(x = trainData %>% select(!matches("pase_drop")),
|
||||
y = factor(trainData$pase_drop),
|
||||
plot = "density",
|
||||
strip=strip.custom(par.strip.text=list(cex=.7)),
|
||||
scales = list(x = list(relation="free"),
|
||||
y = list(relation="free")))
|
||||
```
|
||||
|
||||
|
||||
```{r}
|
||||
subsets <- c(1:10, 15, 18,33)
|
||||
|
||||
ctrl <- rfeControl(functions = rfFuncs,
|
||||
method = "repeatedcv",
|
||||
repeats = 5,
|
||||
verbose = FALSE)
|
||||
|
||||
lmProfile <- rfe(x = trainData %>% select(!matches("pase_drop")),
|
||||
y = trainData$pase_drop,
|
||||
sizes = subsets,
|
||||
rfeControl = ctrl)
|
||||
|
||||
lmProfile
|
||||
```
|
||||
|
||||
|
||||
```{r}
|
||||
set.seed(1000)
|
||||
|
||||
forest.model <- train(pase_drop ~., trainData)
|
||||
|
||||
result.predicted.prob <- predict(forest.model, testData, type="prob") # Prediction
|
||||
|
||||
result.roc <- roc(factor(testData$pase_drop), result.predicted.prob$no) # Draw ROC curve.
|
||||
|
||||
plot(result.roc, print.thres="best", print.thres.best.method="closest.topleft")
|
||||
|
||||
result.coords <- coords(result.roc, "best", best.method="closest.topleft", ret=c("threshold", "accuracy"))
|
||||
print(result.coords)#to get threshold and accuracy
|
||||
```
|
||||
|
||||
```{r}
|
||||
library(MLeval)
|
||||
|
||||
myTrainingControl <- trainControl(method = "cv",
|
||||
number = 10,
|
||||
savePredictions = TRUE,
|
||||
classProbs = TRUE,
|
||||
verboseIter = TRUE)
|
||||
|
||||
randomForestFit = train(x = trainData[,1:32],
|
||||
y = as.factor(trainData$pase_drop),
|
||||
method = "rf",
|
||||
trControl = myTrainingControl,
|
||||
preProcess = c("center","scale"),
|
||||
ntree = 50)
|
||||
|
||||
x <- evalm(randomForestFit)
|
||||
|
||||
x$roc
|
||||
|
||||
x$stdres
|
||||
```
|
||||
|
||||
6
1 PA Decline/archive/regularised model.R
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
##
|
||||
## Regularisation
|
||||
##
|
||||
##
|
||||
|
||||
|
||||
BIN
1 PA Decline/article ready.docx
Normal file
1379
1 PA Decline/article ready.html
Normal file
2078
1 PA Decline/article ready_files/libs/bootstrap/bootstrap-icons.css
vendored
Normal file
12
1 PA Decline/article ready_files/libs/bootstrap/bootstrap.min.css
vendored
Normal file
7
1 PA Decline/article ready_files/libs/bootstrap/bootstrap.min.js
vendored
Normal file
7
1 PA Decline/article ready_files/libs/clipboard/clipboard.min.js
vendored
Normal file
9
1 PA Decline/article ready_files/libs/quarto-html/anchor.min.js
vendored
Normal file
6
1 PA Decline/article ready_files/libs/quarto-html/popper.min.js
vendored
Normal file
|
|
@ -0,0 +1,203 @@
|
|||
/* quarto syntax highlight colors */
|
||||
:root {
|
||||
--quarto-hl-ot-color: #003B4F;
|
||||
--quarto-hl-at-color: #657422;
|
||||
--quarto-hl-ss-color: #20794D;
|
||||
--quarto-hl-an-color: #5E5E5E;
|
||||
--quarto-hl-fu-color: #4758AB;
|
||||
--quarto-hl-st-color: #20794D;
|
||||
--quarto-hl-cf-color: #003B4F;
|
||||
--quarto-hl-op-color: #5E5E5E;
|
||||
--quarto-hl-er-color: #AD0000;
|
||||
--quarto-hl-bn-color: #AD0000;
|
||||
--quarto-hl-al-color: #AD0000;
|
||||
--quarto-hl-va-color: #111111;
|
||||
--quarto-hl-bu-color: inherit;
|
||||
--quarto-hl-ex-color: inherit;
|
||||
--quarto-hl-pp-color: #AD0000;
|
||||
--quarto-hl-in-color: #5E5E5E;
|
||||
--quarto-hl-vs-color: #20794D;
|
||||
--quarto-hl-wa-color: #5E5E5E;
|
||||
--quarto-hl-do-color: #5E5E5E;
|
||||
--quarto-hl-im-color: #00769E;
|
||||
--quarto-hl-ch-color: #20794D;
|
||||
--quarto-hl-dt-color: #AD0000;
|
||||
--quarto-hl-fl-color: #AD0000;
|
||||
--quarto-hl-co-color: #5E5E5E;
|
||||
--quarto-hl-cv-color: #5E5E5E;
|
||||
--quarto-hl-cn-color: #8f5902;
|
||||
--quarto-hl-sc-color: #5E5E5E;
|
||||
--quarto-hl-dv-color: #AD0000;
|
||||
--quarto-hl-kw-color: #003B4F;
|
||||
}
|
||||
|
||||
/* other quarto variables */
|
||||
:root {
|
||||
--quarto-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
}
|
||||
|
||||
pre > code.sourceCode > span {
|
||||
color: #003B4F;
|
||||
}
|
||||
|
||||
code span {
|
||||
color: #003B4F;
|
||||
}
|
||||
|
||||
code.sourceCode > span {
|
||||
color: #003B4F;
|
||||
}
|
||||
|
||||
div.sourceCode,
|
||||
div.sourceCode pre.sourceCode {
|
||||
color: #003B4F;
|
||||
}
|
||||
|
||||
code span.ot {
|
||||
color: #003B4F;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.at {
|
||||
color: #657422;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.ss {
|
||||
color: #20794D;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.an {
|
||||
color: #5E5E5E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.fu {
|
||||
color: #4758AB;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.st {
|
||||
color: #20794D;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.cf {
|
||||
color: #003B4F;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.op {
|
||||
color: #5E5E5E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.er {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.bn {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.al {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.va {
|
||||
color: #111111;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.bu {
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.ex {
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.pp {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.in {
|
||||
color: #5E5E5E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.vs {
|
||||
color: #20794D;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.wa {
|
||||
color: #5E5E5E;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
code span.do {
|
||||
color: #5E5E5E;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
code span.im {
|
||||
color: #00769E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.ch {
|
||||
color: #20794D;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.dt {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.fl {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.co {
|
||||
color: #5E5E5E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.cv {
|
||||
color: #5E5E5E;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
code span.cn {
|
||||
color: #8f5902;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.sc {
|
||||
color: #5E5E5E;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.dv {
|
||||
color: #AD0000;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
code span.kw {
|
||||
color: #003B4F;
|
||||
font-style: inherit;
|
||||
}
|
||||
|
||||
.prevent-inlining {
|
||||
content: "</";
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=debc5d5d77c3f9108843748ff7464032.css.map */
|
||||
899
1 PA Decline/article ready_files/libs/quarto-html/quarto.js
Normal file
|
|
@ -0,0 +1,899 @@
|
|||
const sectionChanged = new CustomEvent("quarto-sectionChanged", {
|
||||
detail: {},
|
||||
bubbles: true,
|
||||
cancelable: false,
|
||||
composed: false,
|
||||
});
|
||||
|
||||
const layoutMarginEls = () => {
|
||||
// Find any conflicting margin elements and add margins to the
|
||||
// top to prevent overlap
|
||||
const marginChildren = window.document.querySelectorAll(
|
||||
".column-margin.column-container > *, .margin-caption, .aside"
|
||||
);
|
||||
|
||||
let lastBottom = 0;
|
||||
for (const marginChild of marginChildren) {
|
||||
if (marginChild.offsetParent !== null) {
|
||||
// clear the top margin so we recompute it
|
||||
marginChild.style.marginTop = null;
|
||||
const top = marginChild.getBoundingClientRect().top + window.scrollY;
|
||||
if (top < lastBottom) {
|
||||
const marginChildStyle = window.getComputedStyle(marginChild);
|
||||
const marginBottom = parseFloat(marginChildStyle["marginBottom"]);
|
||||
const margin = lastBottom - top + marginBottom;
|
||||
marginChild.style.marginTop = `${margin}px`;
|
||||
}
|
||||
const styles = window.getComputedStyle(marginChild);
|
||||
const marginTop = parseFloat(styles["marginTop"]);
|
||||
lastBottom = top + marginChild.getBoundingClientRect().height + marginTop;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
window.document.addEventListener("DOMContentLoaded", function (_event) {
|
||||
// Recompute the position of margin elements anytime the body size changes
|
||||
if (window.ResizeObserver) {
|
||||
const resizeObserver = new window.ResizeObserver(
|
||||
throttle(() => {
|
||||
layoutMarginEls();
|
||||
if (
|
||||
window.document.body.getBoundingClientRect().width < 990 &&
|
||||
isReaderMode()
|
||||
) {
|
||||
quartoToggleReader();
|
||||
}
|
||||
}, 50)
|
||||
);
|
||||
resizeObserver.observe(window.document.body);
|
||||
}
|
||||
|
||||
const tocEl = window.document.querySelector('nav.toc-active[role="doc-toc"]');
|
||||
const sidebarEl = window.document.getElementById("quarto-sidebar");
|
||||
const leftTocEl = window.document.getElementById("quarto-sidebar-toc-left");
|
||||
const marginSidebarEl = window.document.getElementById(
|
||||
"quarto-margin-sidebar"
|
||||
);
|
||||
// function to determine whether the element has a previous sibling that is active
|
||||
const prevSiblingIsActiveLink = (el) => {
|
||||
const sibling = el.previousElementSibling;
|
||||
if (sibling && sibling.tagName === "A") {
|
||||
return sibling.classList.contains("active");
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
// fire slideEnter for bootstrap tab activations (for htmlwidget resize behavior)
|
||||
function fireSlideEnter(e) {
|
||||
const event = window.document.createEvent("Event");
|
||||
event.initEvent("slideenter", true, true);
|
||||
window.document.dispatchEvent(event);
|
||||
}
|
||||
const tabs = window.document.querySelectorAll('a[data-bs-toggle="tab"]');
|
||||
tabs.forEach((tab) => {
|
||||
tab.addEventListener("shown.bs.tab", fireSlideEnter);
|
||||
});
|
||||
|
||||
// fire slideEnter for tabby tab activations (for htmlwidget resize behavior)
|
||||
document.addEventListener("tabby", fireSlideEnter, false);
|
||||
|
||||
// Track scrolling and mark TOC links as active
|
||||
// get table of contents and sidebar (bail if we don't have at least one)
|
||||
const tocLinks = tocEl
|
||||
? [...tocEl.querySelectorAll("a[data-scroll-target]")]
|
||||
: [];
|
||||
const makeActive = (link) => tocLinks[link].classList.add("active");
|
||||
const removeActive = (link) => tocLinks[link].classList.remove("active");
|
||||
const removeAllActive = () =>
|
||||
[...Array(tocLinks.length).keys()].forEach((link) => removeActive(link));
|
||||
|
||||
// activate the anchor for a section associated with this TOC entry
|
||||
tocLinks.forEach((link) => {
|
||||
link.addEventListener("click", () => {
|
||||
if (link.href.indexOf("#") !== -1) {
|
||||
const anchor = link.href.split("#")[1];
|
||||
const heading = window.document.querySelector(
|
||||
`[data-anchor-id=${anchor}]`
|
||||
);
|
||||
if (heading) {
|
||||
// Add the class
|
||||
heading.classList.add("reveal-anchorjs-link");
|
||||
|
||||
// function to show the anchor
|
||||
const handleMouseout = () => {
|
||||
heading.classList.remove("reveal-anchorjs-link");
|
||||
heading.removeEventListener("mouseout", handleMouseout);
|
||||
};
|
||||
|
||||
// add a function to clear the anchor when the user mouses out of it
|
||||
heading.addEventListener("mouseout", handleMouseout);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
const sections = tocLinks.map((link) => {
|
||||
const target = link.getAttribute("data-scroll-target");
|
||||
if (target.startsWith("#")) {
|
||||
return window.document.getElementById(decodeURI(`${target.slice(1)}`));
|
||||
} else {
|
||||
return window.document.querySelector(decodeURI(`${target}`));
|
||||
}
|
||||
});
|
||||
|
||||
const sectionMargin = 200;
|
||||
let currentActive = 0;
|
||||
// track whether we've initialized state the first time
|
||||
let init = false;
|
||||
|
||||
const updateActiveLink = () => {
|
||||
// The index from bottom to top (e.g. reversed list)
|
||||
let sectionIndex = -1;
|
||||
if (
|
||||
window.innerHeight + window.pageYOffset >=
|
||||
window.document.body.offsetHeight
|
||||
) {
|
||||
sectionIndex = 0;
|
||||
} else {
|
||||
sectionIndex = [...sections].reverse().findIndex((section) => {
|
||||
if (section) {
|
||||
return window.pageYOffset >= section.offsetTop - sectionMargin;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
if (sectionIndex > -1) {
|
||||
const current = sections.length - sectionIndex - 1;
|
||||
if (current !== currentActive) {
|
||||
removeAllActive();
|
||||
currentActive = current;
|
||||
makeActive(current);
|
||||
if (init) {
|
||||
window.dispatchEvent(sectionChanged);
|
||||
}
|
||||
init = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const inHiddenRegion = (top, bottom, hiddenRegions) => {
|
||||
for (const region of hiddenRegions) {
|
||||
if (top <= region.bottom && bottom >= region.top) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
const categorySelector = "header.quarto-title-block .quarto-category";
|
||||
const activateCategories = (href) => {
|
||||
// Find any categories
|
||||
// Surround them with a link pointing back to:
|
||||
// #category=Authoring
|
||||
try {
|
||||
const categoryEls = window.document.querySelectorAll(categorySelector);
|
||||
for (const categoryEl of categoryEls) {
|
||||
const categoryText = categoryEl.textContent;
|
||||
if (categoryText) {
|
||||
const link = `${href}#category=${encodeURIComponent(categoryText)}`;
|
||||
const linkEl = window.document.createElement("a");
|
||||
linkEl.setAttribute("href", link);
|
||||
for (const child of categoryEl.childNodes) {
|
||||
linkEl.append(child);
|
||||
}
|
||||
categoryEl.appendChild(linkEl);
|
||||
}
|
||||
}
|
||||
} catch {
|
||||
// Ignore errors
|
||||
}
|
||||
};
|
||||
function hasTitleCategories() {
|
||||
return window.document.querySelector(categorySelector) !== null;
|
||||
}
|
||||
|
||||
function offsetRelativeUrl(url) {
|
||||
const offset = getMeta("quarto:offset");
|
||||
return offset ? offset + url : url;
|
||||
}
|
||||
|
||||
function offsetAbsoluteUrl(url) {
|
||||
const offset = getMeta("quarto:offset");
|
||||
const baseUrl = new URL(offset, window.location);
|
||||
|
||||
const projRelativeUrl = url.replace(baseUrl, "");
|
||||
if (projRelativeUrl.startsWith("/")) {
|
||||
return projRelativeUrl;
|
||||
} else {
|
||||
return "/" + projRelativeUrl;
|
||||
}
|
||||
}
|
||||
|
||||
// read a meta tag value
|
||||
function getMeta(metaName) {
|
||||
const metas = window.document.getElementsByTagName("meta");
|
||||
for (let i = 0; i < metas.length; i++) {
|
||||
if (metas[i].getAttribute("name") === metaName) {
|
||||
return metas[i].getAttribute("content");
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function findAndActivateCategories() {
|
||||
const currentPagePath = offsetAbsoluteUrl(window.location.href);
|
||||
const response = await fetch(offsetRelativeUrl("listings.json"));
|
||||
if (response.status == 200) {
|
||||
return response.json().then(function (listingPaths) {
|
||||
const listingHrefs = [];
|
||||
for (const listingPath of listingPaths) {
|
||||
const pathWithoutLeadingSlash = listingPath.listing.substring(1);
|
||||
for (const item of listingPath.items) {
|
||||
if (
|
||||
item === currentPagePath ||
|
||||
item === currentPagePath + "index.html"
|
||||
) {
|
||||
// Resolve this path against the offset to be sure
|
||||
// we already are using the correct path to the listing
|
||||
// (this adjusts the listing urls to be rooted against
|
||||
// whatever root the page is actually running against)
|
||||
const relative = offsetRelativeUrl(pathWithoutLeadingSlash);
|
||||
const baseUrl = window.location;
|
||||
const resolvedPath = new URL(relative, baseUrl);
|
||||
listingHrefs.push(resolvedPath.pathname);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Look up the tree for a nearby linting and use that if we find one
|
||||
const nearestListing = findNearestParentListing(
|
||||
offsetAbsoluteUrl(window.location.pathname),
|
||||
listingHrefs
|
||||
);
|
||||
if (nearestListing) {
|
||||
activateCategories(nearestListing);
|
||||
} else {
|
||||
// See if the referrer is a listing page for this item
|
||||
const referredRelativePath = offsetAbsoluteUrl(document.referrer);
|
||||
const referrerListing = listingHrefs.find((listingHref) => {
|
||||
const isListingReferrer =
|
||||
listingHref === referredRelativePath ||
|
||||
listingHref === referredRelativePath + "index.html";
|
||||
return isListingReferrer;
|
||||
});
|
||||
|
||||
if (referrerListing) {
|
||||
// Try to use the referrer if possible
|
||||
activateCategories(referrerListing);
|
||||
} else if (listingHrefs.length > 0) {
|
||||
// Otherwise, just fall back to the first listing
|
||||
activateCategories(listingHrefs[0]);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
if (hasTitleCategories()) {
|
||||
findAndActivateCategories();
|
||||
}
|
||||
|
||||
const findNearestParentListing = (href, listingHrefs) => {
|
||||
if (!href || !listingHrefs) {
|
||||
return undefined;
|
||||
}
|
||||
// Look up the tree for a nearby linting and use that if we find one
|
||||
const relativeParts = href.substring(1).split("/");
|
||||
while (relativeParts.length > 0) {
|
||||
const path = relativeParts.join("/");
|
||||
for (const listingHref of listingHrefs) {
|
||||
if (listingHref.startsWith(path)) {
|
||||
return listingHref;
|
||||
}
|
||||
}
|
||||
relativeParts.pop();
|
||||
}
|
||||
|
||||
return undefined;
|
||||
};
|
||||
|
||||
const manageSidebarVisiblity = (el, placeholderDescriptor) => {
|
||||
let isVisible = true;
|
||||
let elRect;
|
||||
|
||||
return (hiddenRegions) => {
|
||||
if (el === null) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Find the last element of the TOC
|
||||
const lastChildEl = el.lastElementChild;
|
||||
|
||||
if (lastChildEl) {
|
||||
// Converts the sidebar to a menu
|
||||
const convertToMenu = () => {
|
||||
for (const child of el.children) {
|
||||
child.style.opacity = 0;
|
||||
child.style.overflow = "hidden";
|
||||
}
|
||||
|
||||
nexttick(() => {
|
||||
const toggleContainer = window.document.createElement("div");
|
||||
toggleContainer.style.width = "100%";
|
||||
toggleContainer.classList.add("zindex-over-content");
|
||||
toggleContainer.classList.add("quarto-sidebar-toggle");
|
||||
toggleContainer.classList.add("headroom-target"); // Marks this to be managed by headeroom
|
||||
toggleContainer.id = placeholderDescriptor.id;
|
||||
toggleContainer.style.position = "fixed";
|
||||
|
||||
const toggleIcon = window.document.createElement("i");
|
||||
toggleIcon.classList.add("quarto-sidebar-toggle-icon");
|
||||
toggleIcon.classList.add("bi");
|
||||
toggleIcon.classList.add("bi-caret-down-fill");
|
||||
|
||||
const toggleTitle = window.document.createElement("div");
|
||||
const titleEl = window.document.body.querySelector(
|
||||
placeholderDescriptor.titleSelector
|
||||
);
|
||||
if (titleEl) {
|
||||
toggleTitle.append(
|
||||
titleEl.textContent || titleEl.innerText,
|
||||
toggleIcon
|
||||
);
|
||||
}
|
||||
toggleTitle.classList.add("zindex-over-content");
|
||||
toggleTitle.classList.add("quarto-sidebar-toggle-title");
|
||||
toggleContainer.append(toggleTitle);
|
||||
|
||||
const toggleContents = window.document.createElement("div");
|
||||
toggleContents.classList = el.classList;
|
||||
toggleContents.classList.add("zindex-over-content");
|
||||
toggleContents.classList.add("quarto-sidebar-toggle-contents");
|
||||
for (const child of el.children) {
|
||||
if (child.id === "toc-title") {
|
||||
continue;
|
||||
}
|
||||
|
||||
const clone = child.cloneNode(true);
|
||||
clone.style.opacity = 1;
|
||||
clone.style.display = null;
|
||||
toggleContents.append(clone);
|
||||
}
|
||||
toggleContents.style.height = "0px";
|
||||
const positionToggle = () => {
|
||||
// position the element (top left of parent, same width as parent)
|
||||
if (!elRect) {
|
||||
elRect = el.getBoundingClientRect();
|
||||
}
|
||||
toggleContainer.style.left = `${elRect.left}px`;
|
||||
toggleContainer.style.top = `${elRect.top}px`;
|
||||
toggleContainer.style.width = `${elRect.width}px`;
|
||||
};
|
||||
positionToggle();
|
||||
|
||||
toggleContainer.append(toggleContents);
|
||||
el.parentElement.prepend(toggleContainer);
|
||||
|
||||
// Process clicks
|
||||
let tocShowing = false;
|
||||
// Allow the caller to control whether this is dismissed
|
||||
// when it is clicked (e.g. sidebar navigation supports
|
||||
// opening and closing the nav tree, so don't dismiss on click)
|
||||
const clickEl = placeholderDescriptor.dismissOnClick
|
||||
? toggleContainer
|
||||
: toggleTitle;
|
||||
|
||||
const closeToggle = () => {
|
||||
if (tocShowing) {
|
||||
toggleContainer.classList.remove("expanded");
|
||||
toggleContents.style.height = "0px";
|
||||
tocShowing = false;
|
||||
}
|
||||
};
|
||||
|
||||
// Get rid of any expanded toggle if the user scrolls
|
||||
window.document.addEventListener(
|
||||
"scroll",
|
||||
throttle(() => {
|
||||
closeToggle();
|
||||
}, 50)
|
||||
);
|
||||
|
||||
// Handle positioning of the toggle
|
||||
window.addEventListener(
|
||||
"resize",
|
||||
throttle(() => {
|
||||
elRect = undefined;
|
||||
positionToggle();
|
||||
}, 50)
|
||||
);
|
||||
|
||||
window.addEventListener("quarto-hrChanged", () => {
|
||||
elRect = undefined;
|
||||
});
|
||||
|
||||
// Process the click
|
||||
clickEl.onclick = () => {
|
||||
if (!tocShowing) {
|
||||
toggleContainer.classList.add("expanded");
|
||||
toggleContents.style.height = null;
|
||||
tocShowing = true;
|
||||
} else {
|
||||
closeToggle();
|
||||
}
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
// Converts a sidebar from a menu back to a sidebar
|
||||
const convertToSidebar = () => {
|
||||
for (const child of el.children) {
|
||||
child.style.opacity = 1;
|
||||
child.style.overflow = null;
|
||||
}
|
||||
|
||||
const placeholderEl = window.document.getElementById(
|
||||
placeholderDescriptor.id
|
||||
);
|
||||
if (placeholderEl) {
|
||||
placeholderEl.remove();
|
||||
}
|
||||
|
||||
el.classList.remove("rollup");
|
||||
};
|
||||
|
||||
if (isReaderMode()) {
|
||||
convertToMenu();
|
||||
isVisible = false;
|
||||
} else {
|
||||
// Find the top and bottom o the element that is being managed
|
||||
const elTop = el.offsetTop;
|
||||
const elBottom =
|
||||
elTop + lastChildEl.offsetTop + lastChildEl.offsetHeight;
|
||||
|
||||
if (!isVisible) {
|
||||
// If the element is current not visible reveal if there are
|
||||
// no conflicts with overlay regions
|
||||
if (!inHiddenRegion(elTop, elBottom, hiddenRegions)) {
|
||||
convertToSidebar();
|
||||
isVisible = true;
|
||||
}
|
||||
} else {
|
||||
// If the element is visible, hide it if it conflicts with overlay regions
|
||||
// and insert a placeholder toggle (or if we're in reader mode)
|
||||
if (inHiddenRegion(elTop, elBottom, hiddenRegions)) {
|
||||
convertToMenu();
|
||||
isVisible = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
const tabEls = document.querySelectorAll('a[data-bs-toggle="tab"]');
|
||||
for (const tabEl of tabEls) {
|
||||
const id = tabEl.getAttribute("data-bs-target");
|
||||
if (id) {
|
||||
const columnEl = document.querySelector(
|
||||
`${id} .column-margin, .tabset-margin-content`
|
||||
);
|
||||
if (columnEl)
|
||||
tabEl.addEventListener("shown.bs.tab", function (event) {
|
||||
const el = event.srcElement;
|
||||
if (el) {
|
||||
const visibleCls = `${el.id}-margin-content`;
|
||||
// walk up until we find a parent tabset
|
||||
let panelTabsetEl = el.parentElement;
|
||||
while (panelTabsetEl) {
|
||||
if (panelTabsetEl.classList.contains("panel-tabset")) {
|
||||
break;
|
||||
}
|
||||
panelTabsetEl = panelTabsetEl.parentElement;
|
||||
}
|
||||
|
||||
if (panelTabsetEl) {
|
||||
const prevSib = panelTabsetEl.previousElementSibling;
|
||||
if (
|
||||
prevSib &&
|
||||
prevSib.classList.contains("tabset-margin-container")
|
||||
) {
|
||||
const childNodes = prevSib.querySelectorAll(
|
||||
".tabset-margin-content"
|
||||
);
|
||||
for (const childEl of childNodes) {
|
||||
if (childEl.classList.contains(visibleCls)) {
|
||||
childEl.classList.remove("collapse");
|
||||
} else {
|
||||
childEl.classList.add("collapse");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
layoutMarginEls();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// Manage the visibility of the toc and the sidebar
|
||||
const marginScrollVisibility = manageSidebarVisiblity(marginSidebarEl, {
|
||||
id: "quarto-toc-toggle",
|
||||
titleSelector: "#toc-title",
|
||||
dismissOnClick: true,
|
||||
});
|
||||
const sidebarScrollVisiblity = manageSidebarVisiblity(sidebarEl, {
|
||||
id: "quarto-sidebarnav-toggle",
|
||||
titleSelector: ".title",
|
||||
dismissOnClick: false,
|
||||
});
|
||||
let tocLeftScrollVisibility;
|
||||
if (leftTocEl) {
|
||||
tocLeftScrollVisibility = manageSidebarVisiblity(leftTocEl, {
|
||||
id: "quarto-lefttoc-toggle",
|
||||
titleSelector: "#toc-title",
|
||||
dismissOnClick: true,
|
||||
});
|
||||
}
|
||||
|
||||
// Find the first element that uses formatting in special columns
|
||||
const conflictingEls = window.document.body.querySelectorAll(
|
||||
'[class^="column-"], [class*=" column-"], aside, [class*="margin-caption"], [class*=" margin-caption"], [class*="margin-ref"], [class*=" margin-ref"]'
|
||||
);
|
||||
|
||||
// Filter all the possibly conflicting elements into ones
|
||||
// the do conflict on the left or ride side
|
||||
const arrConflictingEls = Array.from(conflictingEls);
|
||||
const leftSideConflictEls = arrConflictingEls.filter((el) => {
|
||||
if (el.tagName === "ASIDE") {
|
||||
return false;
|
||||
}
|
||||
return Array.from(el.classList).find((className) => {
|
||||
return (
|
||||
className !== "column-body" &&
|
||||
className.startsWith("column-") &&
|
||||
!className.endsWith("right") &&
|
||||
!className.endsWith("container") &&
|
||||
className !== "column-margin"
|
||||
);
|
||||
});
|
||||
});
|
||||
const rightSideConflictEls = arrConflictingEls.filter((el) => {
|
||||
if (el.tagName === "ASIDE") {
|
||||
return true;
|
||||
}
|
||||
|
||||
const hasMarginCaption = Array.from(el.classList).find((className) => {
|
||||
return className == "margin-caption";
|
||||
});
|
||||
if (hasMarginCaption) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return Array.from(el.classList).find((className) => {
|
||||
return (
|
||||
className !== "column-body" &&
|
||||
!className.endsWith("container") &&
|
||||
className.startsWith("column-") &&
|
||||
!className.endsWith("left")
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
const kOverlapPaddingSize = 10;
|
||||
function toRegions(els) {
|
||||
return els.map((el) => {
|
||||
const boundRect = el.getBoundingClientRect();
|
||||
const top =
|
||||
boundRect.top +
|
||||
document.documentElement.scrollTop -
|
||||
kOverlapPaddingSize;
|
||||
return {
|
||||
top,
|
||||
bottom: top + el.scrollHeight + 2 * kOverlapPaddingSize,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
let hasObserved = false;
|
||||
const visibleItemObserver = (els) => {
|
||||
let visibleElements = [...els];
|
||||
const intersectionObserver = new IntersectionObserver(
|
||||
(entries, _observer) => {
|
||||
entries.forEach((entry) => {
|
||||
if (entry.isIntersecting) {
|
||||
if (visibleElements.indexOf(entry.target) === -1) {
|
||||
visibleElements.push(entry.target);
|
||||
}
|
||||
} else {
|
||||
visibleElements = visibleElements.filter((visibleEntry) => {
|
||||
return visibleEntry !== entry;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
if (!hasObserved) {
|
||||
hideOverlappedSidebars();
|
||||
}
|
||||
hasObserved = true;
|
||||
},
|
||||
{}
|
||||
);
|
||||
els.forEach((el) => {
|
||||
intersectionObserver.observe(el);
|
||||
});
|
||||
|
||||
return {
|
||||
getVisibleEntries: () => {
|
||||
return visibleElements;
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
const rightElementObserver = visibleItemObserver(rightSideConflictEls);
|
||||
const leftElementObserver = visibleItemObserver(leftSideConflictEls);
|
||||
|
||||
const hideOverlappedSidebars = () => {
|
||||
marginScrollVisibility(toRegions(rightElementObserver.getVisibleEntries()));
|
||||
sidebarScrollVisiblity(toRegions(leftElementObserver.getVisibleEntries()));
|
||||
if (tocLeftScrollVisibility) {
|
||||
tocLeftScrollVisibility(
|
||||
toRegions(leftElementObserver.getVisibleEntries())
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
window.quartoToggleReader = () => {
|
||||
// Applies a slow class (or removes it)
|
||||
// to update the transition speed
|
||||
const slowTransition = (slow) => {
|
||||
const manageTransition = (id, slow) => {
|
||||
const el = document.getElementById(id);
|
||||
if (el) {
|
||||
if (slow) {
|
||||
el.classList.add("slow");
|
||||
} else {
|
||||
el.classList.remove("slow");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
manageTransition("TOC", slow);
|
||||
manageTransition("quarto-sidebar", slow);
|
||||
};
|
||||
const readerMode = !isReaderMode();
|
||||
setReaderModeValue(readerMode);
|
||||
|
||||
// If we're entering reader mode, slow the transition
|
||||
if (readerMode) {
|
||||
slowTransition(readerMode);
|
||||
}
|
||||
highlightReaderToggle(readerMode);
|
||||
hideOverlappedSidebars();
|
||||
|
||||
// If we're exiting reader mode, restore the non-slow transition
|
||||
if (!readerMode) {
|
||||
slowTransition(!readerMode);
|
||||
}
|
||||
};
|
||||
|
||||
const highlightReaderToggle = (readerMode) => {
|
||||
const els = document.querySelectorAll(".quarto-reader-toggle");
|
||||
if (els) {
|
||||
els.forEach((el) => {
|
||||
if (readerMode) {
|
||||
el.classList.add("reader");
|
||||
} else {
|
||||
el.classList.remove("reader");
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
const setReaderModeValue = (val) => {
|
||||
if (window.location.protocol !== "file:") {
|
||||
window.localStorage.setItem("quarto-reader-mode", val);
|
||||
} else {
|
||||
localReaderMode = val;
|
||||
}
|
||||
};
|
||||
|
||||
const isReaderMode = () => {
|
||||
if (window.location.protocol !== "file:") {
|
||||
return window.localStorage.getItem("quarto-reader-mode") === "true";
|
||||
} else {
|
||||
return localReaderMode;
|
||||
}
|
||||
};
|
||||
let localReaderMode = null;
|
||||
|
||||
const tocOpenDepthStr = tocEl?.getAttribute("data-toc-expanded");
|
||||
const tocOpenDepth = tocOpenDepthStr ? Number(tocOpenDepthStr) : 1;
|
||||
|
||||
// Walk the TOC and collapse/expand nodes
|
||||
// Nodes are expanded if:
|
||||
// - they are top level
|
||||
// - they have children that are 'active' links
|
||||
// - they are directly below an link that is 'active'
|
||||
const walk = (el, depth) => {
|
||||
// Tick depth when we enter a UL
|
||||
if (el.tagName === "UL") {
|
||||
depth = depth + 1;
|
||||
}
|
||||
|
||||
// It this is active link
|
||||
let isActiveNode = false;
|
||||
if (el.tagName === "A" && el.classList.contains("active")) {
|
||||
isActiveNode = true;
|
||||
}
|
||||
|
||||
// See if there is an active child to this element
|
||||
let hasActiveChild = false;
|
||||
for (child of el.children) {
|
||||
hasActiveChild = walk(child, depth) || hasActiveChild;
|
||||
}
|
||||
|
||||
// Process the collapse state if this is an UL
|
||||
if (el.tagName === "UL") {
|
||||
if (tocOpenDepth === -1 && depth > 1) {
|
||||
el.classList.add("collapse");
|
||||
} else if (
|
||||
depth <= tocOpenDepth ||
|
||||
hasActiveChild ||
|
||||
prevSiblingIsActiveLink(el)
|
||||
) {
|
||||
el.classList.remove("collapse");
|
||||
} else {
|
||||
el.classList.add("collapse");
|
||||
}
|
||||
|
||||
// untick depth when we leave a UL
|
||||
depth = depth - 1;
|
||||
}
|
||||
return hasActiveChild || isActiveNode;
|
||||
};
|
||||
|
||||
// walk the TOC and expand / collapse any items that should be shown
|
||||
|
||||
if (tocEl) {
|
||||
walk(tocEl, 0);
|
||||
updateActiveLink();
|
||||
}
|
||||
|
||||
// Throttle the scroll event and walk peridiocally
|
||||
window.document.addEventListener(
|
||||
"scroll",
|
||||
throttle(() => {
|
||||
if (tocEl) {
|
||||
updateActiveLink();
|
||||
walk(tocEl, 0);
|
||||
}
|
||||
if (!isReaderMode()) {
|
||||
hideOverlappedSidebars();
|
||||
}
|
||||
}, 5)
|
||||
);
|
||||
window.addEventListener(
|
||||
"resize",
|
||||
throttle(() => {
|
||||
if (!isReaderMode()) {
|
||||
hideOverlappedSidebars();
|
||||
}
|
||||
}, 10)
|
||||
);
|
||||
hideOverlappedSidebars();
|
||||
highlightReaderToggle(isReaderMode());
|
||||
});
|
||||
|
||||
// grouped tabsets
|
||||
window.addEventListener("pageshow", (_event) => {
|
||||
function getTabSettings() {
|
||||
const data = localStorage.getItem("quarto-persistent-tabsets-data");
|
||||
if (!data) {
|
||||
localStorage.setItem("quarto-persistent-tabsets-data", "{}");
|
||||
return {};
|
||||
}
|
||||
if (data) {
|
||||
return JSON.parse(data);
|
||||
}
|
||||
}
|
||||
|
||||
function setTabSettings(data) {
|
||||
localStorage.setItem(
|
||||
"quarto-persistent-tabsets-data",
|
||||
JSON.stringify(data)
|
||||
);
|
||||
}
|
||||
|
||||
function setTabState(groupName, groupValue) {
|
||||
const data = getTabSettings();
|
||||
data[groupName] = groupValue;
|
||||
setTabSettings(data);
|
||||
}
|
||||
|
||||
function toggleTab(tab, active) {
|
||||
const tabPanelId = tab.getAttribute("aria-controls");
|
||||
const tabPanel = document.getElementById(tabPanelId);
|
||||
if (active) {
|
||||
tab.classList.add("active");
|
||||
tabPanel.classList.add("active");
|
||||
} else {
|
||||
tab.classList.remove("active");
|
||||
tabPanel.classList.remove("active");
|
||||
}
|
||||
}
|
||||
|
||||
function toggleAll(selectedGroup, selectorsToSync) {
|
||||
for (const [thisGroup, tabs] of Object.entries(selectorsToSync)) {
|
||||
const active = selectedGroup === thisGroup;
|
||||
for (const tab of tabs) {
|
||||
toggleTab(tab, active);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function findSelectorsToSyncByLanguage() {
|
||||
const result = {};
|
||||
const tabs = Array.from(
|
||||
document.querySelectorAll(`div[data-group] a[id^='tabset-']`)
|
||||
);
|
||||
for (const item of tabs) {
|
||||
const div = item.parentElement.parentElement.parentElement;
|
||||
const group = div.getAttribute("data-group");
|
||||
if (!result[group]) {
|
||||
result[group] = {};
|
||||
}
|
||||
const selectorsToSync = result[group];
|
||||
const value = item.innerHTML;
|
||||
if (!selectorsToSync[value]) {
|
||||
selectorsToSync[value] = [];
|
||||
}
|
||||
selectorsToSync[value].push(item);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function setupSelectorSync() {
|
||||
const selectorsToSync = findSelectorsToSyncByLanguage();
|
||||
Object.entries(selectorsToSync).forEach(([group, tabSetsByValue]) => {
|
||||
Object.entries(tabSetsByValue).forEach(([value, items]) => {
|
||||
items.forEach((item) => {
|
||||
item.addEventListener("click", (_event) => {
|
||||
setTabState(group, value);
|
||||
toggleAll(value, selectorsToSync[group]);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
return selectorsToSync;
|
||||
}
|
||||
|
||||
const selectorsToSync = setupSelectorSync();
|
||||
for (const [group, selectedName] of Object.entries(getTabSettings())) {
|
||||
const selectors = selectorsToSync[group];
|
||||
// it's possible that stale state gives us empty selections, so we explicitly check here.
|
||||
if (selectors) {
|
||||
toggleAll(selectedName, selectors);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function throttle(func, wait) {
|
||||
let waiting = false;
|
||||
return function () {
|
||||
if (!waiting) {
|
||||
func.apply(this, arguments);
|
||||
waiting = true;
|
||||
setTimeout(function () {
|
||||
waiting = false;
|
||||
}, wait);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function nexttick(func) {
|
||||
return setTimeout(func, 0);
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}
|
||||
2
1 PA Decline/article ready_files/libs/quarto-html/tippy.umd.min.js
vendored
Normal file
325
1 PA Decline/article sankey.R
Normal file
|
|
@ -0,0 +1,325 @@
|
|||
# source("1 PA Decline/data_format.R")
|
||||
|
||||
# NEW QUARTILES
|
||||
|
||||
ds <- readr::read_csv(here::here("/Volumes/Data/REDCap/DDV/talos_ddv.csv"))
|
||||
|
||||
df_raw <- ds |>
|
||||
dplyr::filter(!pase_score_missings_0, !pase_score_missings_4) |>
|
||||
dplyr::transmute(
|
||||
pase_0_cut = as.numeric(stRoke::quantile_cut(x = pase_score_sum_0,
|
||||
groups = 4,
|
||||
group.names = paste0(1:4))),
|
||||
pase_6_cut = as.numeric(stRoke::quantile_cut(x = pase_score_sum_4,
|
||||
y = pase_score_sum_0,
|
||||
groups = 4,
|
||||
inc.outs = TRUE,
|
||||
group.names = paste0(1:4))),
|
||||
change = dplyr::case_when(
|
||||
pase_0_cut %in% 2:4 & pase_6_cut == 1 ~ "drop",
|
||||
pase_6_cut %in% 2:4 & pase_0_cut == 1 ~ "hop",
|
||||
pase_0_cut %in% 2:4 & pase_6_cut %in% 2:4 ~ "hh",
|
||||
pase_0_cut %in% 1 & pase_6_cut == 1 ~ "ll"
|
||||
)
|
||||
,
|
||||
change_any = factor(dplyr::case_when(
|
||||
pase_6_cut > pase_0_cut ~ "hop",
|
||||
pase_6_cut < pase_0_cut ~ "drop",
|
||||
pase_0_cut %in% 2:4 & pase_6_cut %in% 2:4 ~ "hh",
|
||||
pase_0_cut %in% 1 & pase_6_cut == 1 ~ "ll"
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
# Visuals - sankey
|
||||
# https://stackoverflow.com/questions/50395027/beautifying-sankey-alluvial-visualization-using-r
|
||||
|
||||
|
||||
## Painting
|
||||
|
||||
sankey_ready <- function(data,change.var="change"){
|
||||
df <- data |>
|
||||
dplyr::count(dplyr::across(dplyr::all_of(c("pase_0_cut", "pase_6_cut",change.var)))) |>
|
||||
dplyr::mutate(dplyr::across(dplyr::starts_with("pase_"),\(.x) factor(.x))) |>
|
||||
setNames(c("pase_0_cut", "pase_6_cut","change","n"))
|
||||
|
||||
lbs0 <-
|
||||
c(
|
||||
paste0("1st \n(n=", sum(df$n[df$pase_0_cut == "1"]), ")"),
|
||||
paste0("2nd \n(n=", sum(df$n[df$pase_0_cut == "2"]), ")"),
|
||||
paste0("3rd \n(n=", sum(df$n[df$pase_0_cut == "3"]), ")"),
|
||||
paste0("4th \n(n=", sum(df$n[df$pase_0_cut == "4"]), ")")
|
||||
)
|
||||
|
||||
|
||||
lbs6 <-
|
||||
c(
|
||||
paste0("1st \n(n=", sum(df$n[df$pase_6_cut == "1"]), ")"),
|
||||
paste0("2nd \n(n=", sum(df$n[df$pase_6_cut == "2"]), ")"),
|
||||
paste0("3rd \n(n=", sum(df$n[df$pase_6_cut == "3"]), ")"),
|
||||
paste0("4th \n(n=", sum(df$n[df$pase_6_cut == "4"]), ")")
|
||||
)
|
||||
|
||||
|
||||
levels(df$pase_0_cut) <- lbs0[1:length(levels(df$pase_0_cut))]
|
||||
levels(df$pase_6_cut) <- lbs6[1:length(levels(df$pase_6_cut))]
|
||||
|
||||
df$pase_0_cut <- factor(df$pase_0_cut, levels = rev(levels(df$pase_0_cut)))
|
||||
df$pase_6_cut <- factor(df$pase_6_cut, levels = rev(levels(df$pase_6_cut)))
|
||||
|
||||
df$change <- factor(df$change, levels = c("hh","hop", "drop", "ll"))
|
||||
|
||||
if (change.var=="change"){
|
||||
df |> dplyr::mutate(first_grp=ifelse(substr(pase_0_cut,1,1)==1,"low","higher"))
|
||||
} else if (change.var=="change_any"){
|
||||
df |> dplyr::mutate(first_grp=dplyr::case_when(
|
||||
substr(pase_0_cut,1,1)==1 ~ "low",
|
||||
substr(pase_0_cut,1,1) %in% 2:3 ~ "mid",
|
||||
substr(pase_0_cut,1,1)==4 ~ "high"))
|
||||
}
|
||||
}
|
||||
|
||||
# hops <- "#66c1a3" # grey
|
||||
# # drops <- "#990033" # Midtrød
|
||||
# drops <- "#CE0045" # Lighter Midtrød
|
||||
# nos <- "grey80" # Light grey
|
||||
#
|
||||
# # border <- "#00596B"
|
||||
# # box <- "#008099"
|
||||
#
|
||||
# border <- "#EA571D"
|
||||
# box <- "#1E4B66"
|
||||
#
|
||||
# higher <- "yellow"
|
||||
# low <- "purple"
|
||||
|
||||
library(ggalluvial)
|
||||
|
||||
library(ggplot2)
|
||||
|
||||
# stRoke::color_plot(viridisLite::turbo (4))
|
||||
|
||||
plot_sankey <- function(data,
|
||||
# palette=viridisLite::turbo(4),
|
||||
hops = "#66c1a3",
|
||||
drops = "#CE0045",
|
||||
hh = "#fcdc9c",
|
||||
ll = "#fcdc9c",
|
||||
border = "#EA571D",
|
||||
box = "#1E4B66",
|
||||
higher = "#2986cc",
|
||||
mid = "#b4a7d6",
|
||||
low = "#590075",
|
||||
alpha = 0.8,
|
||||
a1=pase_0_cut,
|
||||
a2=pase_6_cut,
|
||||
a1.grp=first_grp,
|
||||
text.size = 4
|
||||
){
|
||||
|
||||
if (length(unique(data[[ncol(data)]]))>2) {
|
||||
fills <- c(higher,low,mid)
|
||||
} else {
|
||||
fills <- c(higher,low)
|
||||
}
|
||||
|
||||
cls <- c(hh, hops, drops, ll)
|
||||
# stratum.grp <- c(df[["first_grp"]],df[["last_grp"]])
|
||||
|
||||
# cls <- palette
|
||||
# browser()
|
||||
ggplot(data, aes(y = n, axis1 = {{a1}}, axis2 = {{a2}})) +
|
||||
geom_alluvium(
|
||||
aes(fill = change, color = change),
|
||||
width = 1 / 16,
|
||||
alpha = alpha,
|
||||
knot.pos = 0.4,
|
||||
curve_type ="sigmoid"
|
||||
) +
|
||||
geom_stratum(aes(fill={{a1.grp}}),
|
||||
# geom_stratum(aes(fill=stratum_grp),
|
||||
size = 2,
|
||||
width = 1 / 3.4,
|
||||
# fill = box,
|
||||
color = border
|
||||
) +
|
||||
geom_text(stat = "stratum",
|
||||
aes(label = after_stat(stratum)),
|
||||
colour = "white",
|
||||
size = text.size,
|
||||
lineheight = 1) +
|
||||
scale_x_continuous(
|
||||
breaks = 1:2,
|
||||
labels = c("Pre-stroke\nPASE quartile", "Six months\nPASE quartile")
|
||||
) +
|
||||
scale_fill_manual(values = c(cls,fills),na.value = box) +
|
||||
scale_color_manual(values = cls) +
|
||||
ggtitle("PA level changes from \npre-stroke to post-stroke")
|
||||
}
|
||||
|
||||
## Changes to left colum coloring is needed.
|
||||
|
||||
c("change","change_any") |> purrr::map(\(.x){
|
||||
df_raw |>
|
||||
sankey_ready(change.var = .x)
|
||||
}) |>
|
||||
purrr::map(\(.x){
|
||||
.x |> plot_sankey(text.size=4.5)
|
||||
}) |>
|
||||
patchwork::wrap_plots()
|
||||
|
||||
|
||||
|
||||
p_delta <- df_raw |>
|
||||
sankey_ready() |>
|
||||
plot_sankey(text.size=4.5)
|
||||
|
||||
|
||||
# plotly::ggplotly(p_delta)
|
||||
|
||||
# png(
|
||||
# filename = "sankey_change_ARTICLEA.png",
|
||||
# units = "mm",
|
||||
# width = 500,
|
||||
# height = 600,
|
||||
# pointsize = 60,
|
||||
# res = 300
|
||||
# )
|
||||
ggplot2::ggsave(filename = "1 PA Decline/sankey_change_ARTICLEA_ejn.png",
|
||||
p_delta +
|
||||
theme_void() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
axis.text.x = element_text(),
|
||||
# text = element_text(size = 5),
|
||||
plot.title = element_blank(),
|
||||
# panel.background = element_rect(fill = "white"),
|
||||
plot.background = element_rect(fill="white"),
|
||||
panel.border = element_blank()
|
||||
),
|
||||
units = "mm",
|
||||
width = 84,
|
||||
height = 70,
|
||||
# pointsize = 30,
|
||||
dpi = 600)
|
||||
#
|
||||
#
|
||||
ggplot2::ggsave(filename = "1 PA Decline/sankey_change_ARTICLEA.png",
|
||||
p_delta +
|
||||
theme_void() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
axis.text.x = element_text(),
|
||||
text = element_text(size = 20),
|
||||
plot.title = element_blank(),
|
||||
# panel.background = element_rect(fill = "white"),
|
||||
plot.background = element_rect(fill="white"),
|
||||
panel.border = element_blank()
|
||||
),
|
||||
units = "mm",
|
||||
width = 200,
|
||||
height = 220,
|
||||
# pointsize = 30,
|
||||
dpi = 600)
|
||||
|
||||
ggplot2::ggsave(filename = "1 PA Decline/sankey_change_ARTICLEA.pdf",
|
||||
p_delta +
|
||||
theme_void() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
axis.text.x = element_text(),
|
||||
text = element_text(size = 20),
|
||||
plot.title = element_blank(),
|
||||
# panel.background = element_rect(fill = "white"),
|
||||
plot.background = element_rect(fill="white"),
|
||||
panel.border = element_blank()
|
||||
),
|
||||
units = "mm",
|
||||
width = 200,
|
||||
height = 220,
|
||||
# pointsize = 30,
|
||||
dpi = 1200)
|
||||
|
||||
# png(
|
||||
# filename = "sankey_change_PhDDay.png",
|
||||
# units = "mm",
|
||||
# width = 100,
|
||||
# height = 200,
|
||||
# pointsize = 15,
|
||||
# res = 300
|
||||
# )
|
||||
# p_delta +
|
||||
# theme_minimal() +
|
||||
# theme(
|
||||
# legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
# axis.text.x = element_text(size = 14, face = "bold"),
|
||||
# plot.title = element_text(hjust = 0.5, vjust = 1, size = 30, face = "bold")
|
||||
# )
|
||||
# dev.off()
|
||||
|
||||
|
||||
# png(
|
||||
# filename = "sankey_change_PhDDay_min.png",
|
||||
# units = "mm",
|
||||
# width = 500,
|
||||
# height = 500,
|
||||
# pointsize = 15,
|
||||
# res = 300
|
||||
# )
|
||||
# p_delta +
|
||||
# theme_minimal() +
|
||||
# theme(
|
||||
# legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
# axis.text.x = element_blank(),
|
||||
# plot.title = element_blank(),
|
||||
# panel.background = element_rect(fill = "transparent"),
|
||||
# plot.background = element_rect(fill = "transparent", color = NA)
|
||||
# )
|
||||
# dev.off()
|
||||
|
||||
|
||||
|
||||
# png(
|
||||
# filename = "sankey_change_ESOC23.png",
|
||||
# units = "mm",
|
||||
# width = 500,
|
||||
# height = 500,
|
||||
# pointsize = 60,
|
||||
# res = 300
|
||||
# )
|
||||
# p_delta +
|
||||
# theme_minimal() +
|
||||
# theme(
|
||||
# legend.position = "none",
|
||||
# panel.grid.major = element_blank(),
|
||||
# panel.grid.minor = element_blank(),
|
||||
# axis.text.y = element_blank(),
|
||||
# axis.title.y = element_blank(),
|
||||
# axis.text.x = element_blank(),
|
||||
# plot.title = element_blank(),
|
||||
# panel.background = element_rect(fill = "transparent"),
|
||||
# plot.background = element_rect(fill = "transparent", color = NA)
|
||||
# )
|
||||
# dev.off()
|
||||
|
||||
24
1 PA Decline/calibration plot.R
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# calibration plot
|
||||
|
||||
|
||||
ds <- openxlsx2::read_xlsx("1 PA Decline/Fra DDV/calibration_imp.xlsx")
|
||||
|
||||
p <- ds |> split(ds$model) |>
|
||||
purrr::imap(\(.x,.i){
|
||||
.x |> predtools::calibration_plot(obs="y",pred="pred")|>
|
||||
purrr::pluck("calibration_plot")+
|
||||
ggplot2::ggtitle(.i)+
|
||||
ggplot2::scale_x_continuous(breaks=seq(0,1,.25),limits=c(0,1))+
|
||||
ggplot2::scale_y_continuous(breaks=seq(0,1,.25),limits=c(-.1,1.1))
|
||||
}) |>
|
||||
patchwork::wrap_plots(ncol=2)
|
||||
|
||||
|
||||
ggplot2::ggsave(filename = "1 PA Decline/calibration_imp.pdf",
|
||||
plot=p,
|
||||
units = "mm",
|
||||
width = 200,
|
||||
height = 100,
|
||||
# pointsize = 30,
|
||||
dpi = 1200)
|
||||
|
||||
BIN
1 PA Decline/calibration_imp.pdf
Normal file
335
1 PA Decline/coef plot.R
Normal file
|
|
@ -0,0 +1,335 @@
|
|||
## Examples
|
||||
|
||||
# stRoke::talos |>
|
||||
# dplyr::mutate(across(tidyselect::starts_with("mrs"), as.numeric)) |>
|
||||
# stRoke::generic_stroke(group = "rtreat", score = "mrs_6", variables = c("hypertension", "diabetes", "civil")) |>
|
||||
# purrr::pluck(3)
|
||||
#
|
||||
# stRoke::talos |>
|
||||
# dplyr::mutate(mrs_6_bin = as.numeric(mrs_6 < 1)) |>
|
||||
# finalfit::or_plot(dependent = "mrs_6_bin", explanatory = c("hypertension", "diabetes", "civil"))
|
||||
|
||||
|
||||
# Consider utilising plotting like finalfit::or_plot
|
||||
|
||||
|
||||
## Sample data
|
||||
# df_coefs <- list(
|
||||
# mrs_6 = stRoke::talos |>
|
||||
# dplyr::select(tidyselect::all_of(c("mrs_6", "rtreat", "hypertension", "diabetes", "civil"))) |>
|
||||
# lm(data = _, mrs_6 ~ .),
|
||||
# mrs_1 = stRoke::talos |>
|
||||
# dplyr::select(tidyselect::all_of(c("mrs_1", "rtreat", "hypertension", "diabetes", "civil"))) |>
|
||||
# lm(data = _, mrs_1 ~ .)
|
||||
# ) |>
|
||||
# lapply(gtsummary::tbl_regression) |>
|
||||
# purrr::map(function(.x) {
|
||||
# .x |> purrr::pluck("table_body") |>
|
||||
# dplyr::select(tidyselect::all_of(c("variable","estimate"))) |>
|
||||
# na.omit()
|
||||
# }) |> purrr::reduce(dplyr::full_join,by="variable") |>
|
||||
# setNames(c("variable","increase","decrease"))
|
||||
|
||||
get_coefs(path = here::here("1 PA Decline/Fra DDV/240624/pa_change_analyses.docx"),index.table = 2)
|
||||
|
||||
|
||||
source(here::here("1 PA Decline/dst import.R"))
|
||||
df_coefs_raw <- get_coefs(path = here::here("1 PA Decline/Fra DDV/240624/pa_change_analyses.docx"),index.table = 2) |>
|
||||
dplyr::filter(variable != "(Intercept)") |>
|
||||
dplyr::select(variable, hop_median, drop_median) |>
|
||||
setNames(c("variable", "INCREASE", "DECREASE"))
|
||||
|
||||
## Real work
|
||||
df_coefs <- df_coefs_raw |>
|
||||
dplyr::mutate(dplyr::across(
|
||||
tidyselect::all_of(c("INCREASE", "DECREASE")),
|
||||
function(.x) {
|
||||
# signif(
|
||||
as.numeric(.x)#,
|
||||
# 3
|
||||
# )
|
||||
}
|
||||
)) |>
|
||||
dplyr::mutate(variable = dplyr::if_else(variable == "Alcohol consumption above recommendations",
|
||||
"High alcohol consumption", variable
|
||||
))|>
|
||||
## Important step to keep the data ordered for ggplot
|
||||
(function(.y) {
|
||||
.y |> dplyr::mutate(variable = factor(variable, levels = rev(.y$variable)))
|
||||
})()
|
||||
|
||||
## Highest ORs
|
||||
list(df_coefs[c(1,2)],df_coefs[c(1,3)]) |>
|
||||
setNames(names(df_coefs)[2:3]) |>
|
||||
purrr::map(function(.x){
|
||||
.x |>
|
||||
setNames(c("var","val"))|>
|
||||
dplyr::mutate(sorting=abs(log(val))) |>
|
||||
dplyr::arrange(1-sorting) |>
|
||||
dplyr::mutate(dplyr::across(dplyr::where(is.numeric),~signif(.x,2))) |>
|
||||
head(5)
|
||||
})
|
||||
|
||||
|
||||
df_long <- df_coefs |>
|
||||
tidyr::pivot_longer(cols = !tidyselect::matches("variable")) |>
|
||||
dplyr::mutate(name = factor(name, levels = rev(unique(name))))
|
||||
|
||||
|
||||
cols <- c(
|
||||
"#CE0045",
|
||||
"#66c1a3"
|
||||
) # Lighter Midtrød
|
||||
|
||||
|
||||
create_log_tics <- function(data){
|
||||
sort(round(unique(c(1/data,data)),2))
|
||||
}
|
||||
|
||||
x.tics <- create_log_tics(c(.25, .4, .6, .8, 1))
|
||||
|
||||
legend.title=""
|
||||
|
||||
levels(df_long$name) <- c("OR for decrease",
|
||||
"OR for increase")
|
||||
|
||||
p1 <- df_long |>
|
||||
# dplyr::filter(name=="decrease") |>
|
||||
ggplot2::ggplot(ggplot2::aes(x = log(value), y = variable, color = name, fill = name)) +
|
||||
ggplot2::geom_vline(ggplot2::aes(xintercept = 0), linewidth = .5, linetype = "dashed") +
|
||||
# ggplot2::geom_errorbarh(ggplot2::aes(xmax = boxCIHigh, xmin = boxCILow), size = .5, height =
|
||||
# .2, color = "gray50") +
|
||||
ggplot2::geom_point(ggplot2::aes(shape = name), size = 6) +
|
||||
# ggplot2::coord_trans(x = scales:::exp_trans(10)) +
|
||||
ggplot2::scale_x_continuous(
|
||||
breaks = log(x.tics),
|
||||
labels = x.tics,
|
||||
limits = log(range(x.tics))
|
||||
) +
|
||||
ggplot2::scale_color_manual(values = cols) +
|
||||
ggplot2::scale_fill_manual(values = cols) +
|
||||
ggplot2::scale_shape_manual(values=c(25,24)) +
|
||||
ggplot2::theme_bw() +
|
||||
ggplot2::theme(panel.grid.minor = ggplot2::element_blank(),
|
||||
# legend.title = ggplot2::element_text(""),
|
||||
legend.position = "bottom") +
|
||||
ggplot2::ylab("") +
|
||||
ggplot2::xlab("Odds ratio (log)") +
|
||||
ggplot2::labs(shape=legend.title,
|
||||
color=legend.title,
|
||||
fill=legend.title)
|
||||
|
||||
#
|
||||
# png(
|
||||
# filename = here::here("1 PA Decline/coef_plot_change_ARTICLEA.png"),
|
||||
# units = "mm",
|
||||
# width = 300,
|
||||
# height = 300,
|
||||
# pointsize = 5,
|
||||
# res = 300
|
||||
# )
|
||||
# p1 +
|
||||
# # ggplot2::theme_minimal() +
|
||||
# ggplot2::theme(
|
||||
# # legend.position = "none",
|
||||
# # panel.grid.major = ggplot2::element_blank(),
|
||||
# # panel.grid.minor = ggplot2::element_blank(),
|
||||
# # axis.text.y = ggplot2::element_blank(),
|
||||
# # axis.title.y = ggplot2::element_blank(),
|
||||
# # axis.text.x = element_blank(),
|
||||
# text = ggplot2::element_text(size = 25)#,
|
||||
# # plot.title = element_text(),
|
||||
# # panel.background = ggplot2::element_rect(fill = "transparent")#,
|
||||
# # plot.background = ggplot2::element_rect(fill = "transparent", color = NA)
|
||||
# )
|
||||
# dev.off()
|
||||
|
||||
|
||||
x.tics <- create_log_tics(c(.25, .6, 1))
|
||||
|
||||
ggplot2::ggsave(
|
||||
filename = here::here("1 PA Decline/coef_plot_change_ARTICLEA_facet.png"),
|
||||
plot = p1 +
|
||||
ggplot2::scale_x_continuous(
|
||||
breaks = log(x.tics),
|
||||
labels = x.tics,
|
||||
limits = log(range(x.tics))
|
||||
) +
|
||||
ggplot2::facet_wrap(facets = ggplot2::vars(name),ncol=2) +
|
||||
# ggplot2::theme_minimal() +
|
||||
ggplot2::theme(
|
||||
legend.position = "none",
|
||||
# panel.grid.major = ggplot2::element_blank(),
|
||||
# panel.grid.minor = ggplot2::element_blank(),
|
||||
# axis.text.y = ggplot2::element_blank(),
|
||||
# axis.title.y = ggplot2::element_blank(),
|
||||
# axis.text.x = element_blank(),
|
||||
text = ggplot2::element_text(size = 16)#,
|
||||
# plot.title = element_text(),
|
||||
# panel.background = ggplot2::element_rect(fill = "transparent")#,
|
||||
# plot.background = ggplot2::element_rect(fill = "transparent", color = NA)
|
||||
),
|
||||
units = "mm",
|
||||
width = 200,
|
||||
height = 200,
|
||||
pointsize = 5,
|
||||
dpi = 600
|
||||
)
|
||||
|
||||
ggplot2::ggsave(
|
||||
filename = here::here("1 PA Decline/coef_plot_change_ARTICLEA_facet.pdf"),
|
||||
plot = p1 +
|
||||
ggplot2::scale_x_continuous(
|
||||
breaks = log(x.tics),
|
||||
labels = x.tics,
|
||||
limits = log(range(x.tics))
|
||||
) +
|
||||
ggplot2::facet_wrap(facets = ggplot2::vars(name),ncol=2) +
|
||||
# ggplot2::theme_minimal() +
|
||||
ggplot2::theme(
|
||||
legend.position = "none",
|
||||
# panel.grid.major = ggplot2::element_blank(),
|
||||
# panel.grid.minor = ggplot2::element_blank(),
|
||||
# axis.text.y = ggplot2::element_blank(),
|
||||
# axis.title.y = ggplot2::element_blank(),
|
||||
# axis.text.x = element_blank(),
|
||||
text = ggplot2::element_text(size = 16)#,
|
||||
# plot.title = element_text(),
|
||||
# panel.background = ggplot2::element_rect(fill = "transparent")#,
|
||||
# plot.background = ggplot2::element_rect(fill = "transparent", color = NA)
|
||||
),
|
||||
units = "mm",
|
||||
width = 200,
|
||||
height = 200,
|
||||
pointsize = 5,
|
||||
dpi = 1200
|
||||
)
|
||||
|
||||
|
||||
|
||||
# p1 <- df_long |>
|
||||
# # dplyr::mutate(value=log10(value)
|
||||
# # ) |>
|
||||
# ggplot2::ggplot(ggplot2::aes(x = variable, y = log(value), fill = name)) +
|
||||
# ggplot2::geom_bar(stat = "identity", position = ggplot2::position_dodge()) +
|
||||
# ggplot2::coord_trans(y = scales:::exp_trans(10)) +
|
||||
# ggplot2::scale_y_continuous(
|
||||
# breaks = log10(c(.2, .4, .5, 1, 1.2, 1.4, 1.6, 2, 2.5)),
|
||||
# labels = c(.2, .4, .5, 1, 1.2, 1.4, 1.6, 2, 2.5),
|
||||
# limits = log10(c(0.09, 2.5))
|
||||
# ) +
|
||||
# ggplot2::geom_hline(yintercept = 0) +
|
||||
# ggplot2::coord_flip() +
|
||||
# ggplot2::scale_fill_manual(values = cols) +
|
||||
# # REF: https://stackoverflow.com/a/22517219/21019325
|
||||
# ggplot2::guides(fill = ggplot2::guide_legend(reverse = TRUE)) +
|
||||
# ggplot2::ylab("OR (log))") +
|
||||
# ggplot2::labs(
|
||||
# fill = "Model" # ,
|
||||
# # title = "Prediction models: increase and decrease after stroke",
|
||||
# # subtitle = "Median coeficient after cross validation"
|
||||
# ) +
|
||||
# ggplot2::theme_classic(11) +
|
||||
# ggplot2::theme(
|
||||
# axis.title.x = ggplot2::element_text(),
|
||||
# axis.title.y = ggplot2::element_blank(),
|
||||
# axis.text.y = ggplot2::element_blank(),
|
||||
# axis.line.y = ggplot2::element_blank(),
|
||||
# axis.ticks.y = ggplot2::element_blank() # ,
|
||||
# # legend.position = "none"
|
||||
# )
|
||||
# p1
|
||||
|
||||
# df_plot <- df_long |>
|
||||
# dplyr::mutate(
|
||||
# id = seq_len(dplyr::n()),
|
||||
# dplyr::across(where(is.numeric), \(.i) signif(.i, digits = 2))
|
||||
# ) |>
|
||||
# (function(.x) {
|
||||
# split(.x, .x[["variable"]]) |>
|
||||
# purrr::map(function(.y) {
|
||||
# .y |> dplyr::mutate(id = rev(id))
|
||||
# }) |>
|
||||
# dplyr::bind_rows()
|
||||
# })() |>
|
||||
# dplyr::mutate(id = rev(id)) |>
|
||||
# (function(.z) {
|
||||
# .z |> dplyr::mutate(var_label = variable |> (function(.x) {
|
||||
# split(.z, .x) |>
|
||||
# purrr::map(function(.y) {
|
||||
# c("", unique(as.character(.y[[1]])))
|
||||
# }) |>
|
||||
# purrr::list_c()
|
||||
# })())
|
||||
# })() |>
|
||||
# dplyr::mutate(val_label = paste("OR:", value))
|
||||
|
||||
|
||||
|
||||
# df_plot <- df_long |>
|
||||
# dplyr::mutate(
|
||||
# id = seq_len(dplyr::n()),
|
||||
# dplyr::across(where(is.numeric), \(.i) signif(.i, digits = 2))
|
||||
# ) |>
|
||||
# (function(.x) {
|
||||
# split(.x, .x[["variable"]]) |>
|
||||
# purrr::map(function(.y) {
|
||||
# .y |> dplyr::mutate(id = rev(id))
|
||||
# }) |>
|
||||
# dplyr::bind_rows()
|
||||
# })() |>
|
||||
# dplyr::mutate(id = rev(id)) |>
|
||||
# (function(.z) {
|
||||
# .z |> dplyr::mutate(var_label = variable |> (function(.x) {
|
||||
# split(.z, .x) |>
|
||||
# purrr::map(function(.y) {
|
||||
# c("", unique(as.character(.y[[1]])))
|
||||
# }) |>
|
||||
# purrr::list_c()
|
||||
# })())
|
||||
# })() |>
|
||||
# dplyr::mutate(val_label = paste("OR:", value))
|
||||
#
|
||||
# table_text_size <- 5
|
||||
# title_text_size <- 20
|
||||
# column_space <- c(0, .6)
|
||||
#
|
||||
# t1 <- df_plot |> ggplot2::ggplot(ggplot2::aes(x = var, y = variable)) +
|
||||
# ggplot2::annotate("text",
|
||||
# x = column_space[1], y = df_plot$variable,
|
||||
# label = df_plot[[5]], hjust = 0, size = table_text_size
|
||||
# ) +
|
||||
# # ggplot2::annotate("text",
|
||||
# # x = column_space[2], y = df_plot$id,
|
||||
# # label = df_plot[[2]], hjust = 0, size = table_text_size
|
||||
# # ) +
|
||||
# ggplot2::annotate("text",
|
||||
# x = column_space[2], y = df_plot$variable,
|
||||
# label = df_plot[[6]], hjust = 0, size = table_text_size
|
||||
# ) +
|
||||
# ggplot2::xlim(0, .8) +
|
||||
# ggplot2::theme_classic(14) +
|
||||
# ggplot2::theme(
|
||||
# axis.title.x = ggplot2::element_text(colour = "white"),
|
||||
# axis.text.x = ggplot2::element_text(colour = "white"),
|
||||
# axis.title.y = ggplot2::element_blank(),
|
||||
# axis.text.y = ggplot2::element_blank(),
|
||||
# axis.ticks.y = ggplot2::element_blank(),
|
||||
# line = ggplot2::element_blank()
|
||||
# )
|
||||
#
|
||||
# patchwork::wrap_plots(t1,
|
||||
# p1,
|
||||
# ncol = 2, widths = c(1, 1.5)
|
||||
# ) + patchwork::plot_annotation(title = "Prediction models: decrease and increase PA")
|
||||
#
|
||||
#
|
||||
# gridExtra::grid.arrange(t1,
|
||||
# p1,
|
||||
# ncol = 2,
|
||||
# widths = c(1, 1.5),
|
||||
# top = grid::textGrob("Prediction models: decrease and increase PA",
|
||||
# x = 0.02, y = 0.2, gp = grid::gpar(fontsize = title_text_size),
|
||||
# just = "left"
|
||||
# )
|
||||
# )
|
||||
BIN
1 PA Decline/coef_plot_change_ARTICLEA.png
Normal file
|
After Width: | Height: | Size: 610 KiB |
BIN
1 PA Decline/coef_plot_change_ARTICLEA_facet.pdf
Normal file
BIN
1 PA Decline/coef_plot_change_ARTICLEA_facet.png
Normal file
|
After Width: | Height: | Size: 567 KiB |
50
1 PA Decline/data_format.R
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
## Article 1 outcome group definition script
|
||||
## To be enriched from Statistics Denmark
|
||||
##
|
||||
## Based on the ItMLiHSmar2022 course
|
||||
|
||||
library(Hmisc)
|
||||
library(dplyr)
|
||||
# library(daDoctoR)
|
||||
library(tidyselect)
|
||||
|
||||
# Setting final primary output from "pout"
|
||||
if (pout=="drop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_drop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_0_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
if (pout=="hop"){
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(group=pase_hop_fac)
|
||||
|
||||
# print(quantile(as.numeric(X_tbl$pase_0)))
|
||||
# print(quantile(as.numeric(X_tbl$pase_6)))
|
||||
# print(summary(X_tbl$pase_0_cut))
|
||||
|
||||
X_tbl_f <- X_tbl|>
|
||||
filter(pase_6_cut!=1)|>
|
||||
select(-starts_with("pase_"))
|
||||
}
|
||||
|
||||
# Dropping non-complete for analysis
|
||||
Xy <- X_tbl_f|>
|
||||
na.omit()|> # Keeping only complete observations
|
||||
select(-c(tci) # Left out of model as no present in drop-group
|
||||
)|>
|
||||
mutate(mrs_0=factor(ifelse(mrs_0==1,1,2))) # Sets binary mRS 0 to include in glmnet, 0 or above
|
||||
|
||||
label(Xy) = as.list(var.labels[match(names(Xy), names(var.labels))])
|
||||
|
||||
X<-dplyr::select(Xy,-c(group, -starts_with("pase_")) # Exclude primary outcome
|
||||
)
|
||||
y<-Xy$group
|
||||
|
||||
216
1 PA Decline/data_set.R
Normal file
|
|
@ -0,0 +1,216 @@
|
|||
## Article 1 data set definition
|
||||
## To be enriched from Statistics Denmark
|
||||
##
|
||||
## Based on the ItMLiHSmar2022 course
|
||||
|
||||
require(Hmisc)
|
||||
require(dplyr)
|
||||
# library(daDoctoR)
|
||||
require(tidyverse)
|
||||
require(patchwork)
|
||||
require(caret)
|
||||
require(glmnet)
|
||||
require(leaps)
|
||||
require(pROC)
|
||||
require(gt)
|
||||
require(gtsummary)
|
||||
require(glue)
|
||||
# library(ggdendro)
|
||||
require(corrplot)
|
||||
require(stRoke)
|
||||
|
||||
## ====================================================================
|
||||
# Step 1: Import
|
||||
## ====================================================================
|
||||
|
||||
if ("try-error" %in% class(t <- try(read.csv("/Volumes/Data/exercise/source/background.csv")))) {
|
||||
export <-
|
||||
read.csv(
|
||||
"/Volumes/Data 1/exercise/source/background.csv",
|
||||
colClasses = "character",
|
||||
na.strings = c("NA", "", "unknown")
|
||||
)
|
||||
} else if (!"try-error" %in% class(t)) {
|
||||
export <-
|
||||
read.csv(
|
||||
"/Volumes/Data/exercise/source/background.csv",
|
||||
colClasses = "character",
|
||||
na.strings = c("NA", "", "unknown")
|
||||
)
|
||||
}
|
||||
|
||||
## ====================================================================
|
||||
# Step 2: Selection
|
||||
## ====================================================================
|
||||
|
||||
|
||||
export<-export[,c("pase_0",
|
||||
"age",
|
||||
"sex",
|
||||
"civil",
|
||||
"smoke_ever",
|
||||
"smoker",
|
||||
"rtreat",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"thrombolysis",
|
||||
"pad",
|
||||
"thrombechtomy",
|
||||
"ami",
|
||||
"tci",
|
||||
"pase_6")]
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: Formatting variables
|
||||
## ====================================================================
|
||||
|
||||
export$diabetes[is.na(export$diabetes)]<-"no"
|
||||
export$diabetes[is.na(export$hypertension)]<-"no"
|
||||
export$thrombolysis[is.na(export$thrombolysis)]<-"no"
|
||||
export$thrombechtomy[is.na(export$thrombechtomy)]<-"no"
|
||||
export$pad[is.na(export$pad)]<-"no"
|
||||
export$ami[is.na(export$ami)]<-"no"
|
||||
# export$smoker_prev <- ifelse(export$smoker=="3","yes","no")
|
||||
export$smoker <- ifelse(export$smoker=="1","yes","no")
|
||||
export$smoker[is.na(export$smoker)] <- "no"
|
||||
# export$mrs_0[export$mrs_0==3]<-NA
|
||||
|
||||
dta <- export %>%
|
||||
# as_tibble()%>%
|
||||
mutate(any_rep=factor(ifelse(thrombolysis=="yes"|thrombechtomy=="yes","yes","no")), # If not noted, no therapy was received
|
||||
male_sex= factor(ifelse(sex=="female","no","yes")),
|
||||
# smoke_ever=factor(ifelse(smoke_ever=="never","no","yes")),
|
||||
civil=factor(ifelse(civil=="partner","no","yes")), # Sets "yes" for not-cohabiting
|
||||
rtreat=factor(ifelse(rtreat=="Placebo","no","yes")), # "Yes" receives active treatment
|
||||
alc=factor(ifelse(alc=="more","yes","no")), # Yes for more than guideline
|
||||
pase_0=as.numeric(pase_0),
|
||||
pase_6=as.numeric(pase_6),
|
||||
across(c("diabetes",
|
||||
"hypertension",
|
||||
"smoker",
|
||||
"afli",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0"),as.factor),
|
||||
across(c("nihss_c",
|
||||
"age"),as.numeric )
|
||||
)%>%
|
||||
select(-c(sex))
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Defining outcome
|
||||
## ====================================================================
|
||||
|
||||
## Changed to step 7
|
||||
## This is to perform proper quantile split based on actually included.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: Ordering variables
|
||||
## ====================================================================
|
||||
|
||||
vars <- c("age",
|
||||
"male_sex",
|
||||
"civil",
|
||||
"pase_0",
|
||||
"smoker",
|
||||
"alc",
|
||||
"afli",
|
||||
"hypertension",
|
||||
"diabetes",
|
||||
"pad",
|
||||
"ami",
|
||||
"tci",
|
||||
"mrs_0",
|
||||
"nihss_c",
|
||||
"any_rep",
|
||||
"rtreat",
|
||||
"pase_6")
|
||||
|
||||
dta<-dta[vars]
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: Labeling
|
||||
## ====================================================================
|
||||
|
||||
var.labels = c(age="Age",
|
||||
male_sex="Male",
|
||||
civil="Living alone",
|
||||
pase_0="Pre-stroke PASE score",
|
||||
pase_6="Six month PASE score",
|
||||
smoker="Daily or occasinally smoking",
|
||||
alc="More alcohol than recommendation",
|
||||
afli="AFIB",
|
||||
hypertension="Hypertension",
|
||||
diabetes="Diabetes",
|
||||
pad="PAD",
|
||||
ami="Previous MI",
|
||||
tci="Previous TIA",
|
||||
mrs_0="Pre-stroke mRS [-1]",
|
||||
nihss_c="Acute NIHSS score",
|
||||
thrombolysis="Acute thrombolysis",
|
||||
thrombechtomy="Acute thrombechtomy",
|
||||
any_rep="Any reperfusion therapy",
|
||||
rtreat="Active trial treatment",
|
||||
pase_drop_fac="PASE first quartile drop F",
|
||||
pase_hop_fac="PASE first quartile hop F",
|
||||
pase_0_cut="PASE 0 quartiles",
|
||||
pase_6_cut="PASE 6 quartiles")
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
# Step 7: final data export
|
||||
## ====================================================================
|
||||
|
||||
data_summary<-summary(dta)
|
||||
|
||||
# Saving "old" factorised variables
|
||||
sel<-sapply(dta,is.factor)
|
||||
# Reformatting factors as 1/2 for analysis
|
||||
dta<-dta |>
|
||||
mutate(across(where(is.factor), as.numeric))|> # Turning factors into 1(no) or 2(yes) for model. Numbered alphabetically.
|
||||
mutate(across(matches(colnames(dta)[sel]), as.factor),
|
||||
across(starts_with("pase_"), as.numeric))
|
||||
|
||||
# Filtering out non-PASE
|
||||
X_tbl<-dta |>
|
||||
filter(!is.na(pase_0),!is.na(pase_6))
|
||||
|
||||
nrow(X_tbl)
|
||||
|
||||
# Defining possible outcome meassures. Keeping in df for characterisation
|
||||
X_tbl <- X_tbl|>
|
||||
mutate(## Relative decline
|
||||
pase_diff=(pase_0-pase_6),
|
||||
pase_decl_rel = pase_diff/pase_0*100,
|
||||
# pase_decl_rel_fac=factor(ifelse(pase_decl_rel>=rel_dif,"yes","no")),
|
||||
## Absolute decline
|
||||
# pase_decl_abs_fac=factor(ifelse(pase_diff>=abs_dif,"yes","no")),
|
||||
## Drop
|
||||
pase_0_cut=quantile_cut(as.numeric(pase_0),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE#,
|
||||
# detail.lst=FALSE
|
||||
),
|
||||
pase_6_cut=quantile_cut(as.numeric(pase_6),
|
||||
groups=4,
|
||||
group.names = c(as.character(1:4)),
|
||||
y=as.numeric(pase_0),
|
||||
ordered.f = TRUE,
|
||||
inc.outs = TRUE#,
|
||||
# detail.lst=FALSE
|
||||
),
|
||||
pase_drop_fac=factor(ifelse(pase_6_cut==1&pase_0_cut!=1,"yes","no")),
|
||||
pase_hop_fac=factor(ifelse(pase_6_cut!=1&pase_0_cut==1,"yes","no")))
|
||||
|
||||
Hmisc::label(X_tbl) = as.list(var.labels[match(names(X_tbl), names(var.labels))])
|
||||
|
||||
83
1 PA Decline/dst import.R
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
#' Reads docx file and splits each table into list
|
||||
#'
|
||||
#' @param path file path
|
||||
#' @param data.type character vector. Could be "paragraph" or "table cell".
|
||||
#'
|
||||
#' @return
|
||||
#' @export
|
||||
#'
|
||||
#' @examples
|
||||
docx2ds <- function(path = here::here("data-raw/Deltagerliste Skirva 2024.docx"),
|
||||
data.type = "table cell", verbose = TRUE) {
|
||||
# Ref: https://www.r-bloggers.com/2020/07/how-to-read-and-create-word-documents-in-r/
|
||||
doc <- officer::read_docx(path)
|
||||
|
||||
content <- doc |> officer::docx_summary()
|
||||
|
||||
if (verbose) {
|
||||
message("Content types in the current document are as follows:")
|
||||
print(content$content_type |> unique())
|
||||
}
|
||||
|
||||
table_cells <- content |> dplyr::filter(content_type %in% data.type)
|
||||
|
||||
# .x <- split(table_cells, table_cells$doc_index)[[4]]
|
||||
|
||||
split(table_cells, table_cells$doc_index) |> purrr::map(function(.x) {
|
||||
table_data <- .x |>
|
||||
dplyr::filter(!is_header) |>
|
||||
dplyr::select(row_id, cell_id, text)
|
||||
|
||||
# split data into individual columns
|
||||
splits <- split(table_data, table_data$cell_id)
|
||||
splits <- lapply(splits, function(.y) .y$text)
|
||||
splits <- splits |>
|
||||
purrr::keep(function(.y) length(.y)>1)
|
||||
|
||||
# If a footer has been added, it is considered part of the first column,
|
||||
# and will result in unequal col lengths.
|
||||
# This solution does not handle merged cells
|
||||
col_lengths <- lengths(splits)
|
||||
|
||||
if (col_lengths[1] > col_lengths[2]){
|
||||
splits[[1]] <- splits[[1]][seq_len(col_lengths[2])]
|
||||
}
|
||||
|
||||
# combine columns back together in wide format
|
||||
table_result <- splits |>
|
||||
dplyr::bind_cols()
|
||||
|
||||
# get table headers
|
||||
cols <- .x |> dplyr::filter(is_header)
|
||||
names(table_result) <- cols$text
|
||||
table_result
|
||||
})
|
||||
}
|
||||
|
||||
get_coefs <- function(path,
|
||||
index.table = 1) {
|
||||
data = docx2ds(
|
||||
path = path
|
||||
)
|
||||
|
||||
data |>
|
||||
purrr::pluck(index.table) |>
|
||||
setNames(c(
|
||||
"variable",
|
||||
lapply(c("drop", "hop"),
|
||||
paste,
|
||||
c("median", "mean"),
|
||||
sep = "_"
|
||||
) |>
|
||||
purrr::list_c()
|
||||
)) |>
|
||||
dplyr::select(variable, tidyselect::ends_with("median")) #|>
|
||||
# dplyr::mutate(dplyr::across(tidyselect::ends_with("median"),~as.numeric))
|
||||
# setNames(c("variable","decrease","increase"))
|
||||
}
|
||||
|
||||
gtsummary2docx <- function(data, path) {
|
||||
data |>
|
||||
gtsummary::as_flex_table() |>
|
||||
flextable::save_as_docx(path = path)
|
||||
}
|
||||
48
1 PA Decline/flowchart.R
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
create_flowchart <- function(data, export.path = NULL) {
|
||||
out <- data |>
|
||||
dplyr::select(pase_0,pase_4) |>
|
||||
dplyr::mutate(id= dplyr::row_number(),
|
||||
exclude=is.na(pase_0)|is.na(pase_4),
|
||||
exclude_reason=factor(dplyr::case_when(
|
||||
is.na(pase_0) ~ "Pre-stroke PASE missing",
|
||||
is.na(pase_4) ~"Post-stroke PASE missing"
|
||||
),levels=c( "Pre-stroke PASE missing","Post-stroke PASE missing")),
|
||||
) |>
|
||||
consort::consort_plot(
|
||||
orders = c(
|
||||
id = "Complete TALOS cohort",
|
||||
exclude_reason = "Excluded",
|
||||
id = "Main dataset"
|
||||
),
|
||||
side_box = c("exclude_reason"),
|
||||
labels = c(
|
||||
"1" = "Identification",
|
||||
"2" = "Inclusion",
|
||||
"3" = "Complete data"
|
||||
)
|
||||
)
|
||||
|
||||
if (!is.null(export.path)) {
|
||||
out |> export_consort_dot(path = export.path)
|
||||
} else {
|
||||
plot(out)
|
||||
}
|
||||
}
|
||||
|
||||
source(here::here("2 Longterm/data.R"))
|
||||
# The original functions from DST unedited
|
||||
source(here::here("1 PA Decline/Fra DDV/functions200411.R"))
|
||||
source(here::here("1 PA Decline/Fra DDV/functions240418.R"))
|
||||
# Modified functions to overwrite original
|
||||
source(here::here("R/functions.R"))
|
||||
|
||||
df <- df_ddv |>
|
||||
dplyr::tibble() |>
|
||||
dplyr::mutate_all(as.character) |>
|
||||
ready_clin() |>
|
||||
data_formatting()|>
|
||||
get_vars(c("clin","lifestyle","ses", "assess.pred")) |>
|
||||
dplyr::mutate(exclude=ifelse(is.na(pase_0)|is.na(pase_4),"Excluded","Included"),
|
||||
age=as.numeric(age))
|
||||
|
||||
df |> create_flowchart()
|
||||
BIN
1 PA Decline/grouped table rows.docx
Normal file
59
1 PA Decline/grouped table rows.qmd
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
---
|
||||
title: "nicer tables"
|
||||
format: docx
|
||||
editor: visual
|
||||
---
|
||||
|
||||
## Tables
|
||||
|
||||
```{r}
|
||||
library(gtsummary)
|
||||
library(dplyr)
|
||||
packageVersion("gtsummary")
|
||||
|
||||
trial%>%
|
||||
select(age, stage, grade)%>%
|
||||
tbl_summary()%>%
|
||||
modify_table_body(
|
||||
~.x %>%
|
||||
|
||||
# add your variable
|
||||
rbind(
|
||||
tibble(
|
||||
variable="Demographics",
|
||||
var_type=NA,
|
||||
var_label = "Demographics",
|
||||
row_type="label",
|
||||
label="Demographics",
|
||||
stat_0= NA))%>% # expand the components of the tibble as needed if you have more columns
|
||||
|
||||
# can add another one
|
||||
rbind(
|
||||
tibble(
|
||||
variable="Tumor characteristics",
|
||||
var_type=NA,
|
||||
var_label = "Tumor characteristics",
|
||||
row_type="label",
|
||||
label="Tumor characteristics",
|
||||
stat_0= NA))%>%
|
||||
|
||||
# specify the position you want these in
|
||||
|
||||
arrange(factor(variable, levels=c("Demographics",
|
||||
"age",
|
||||
"Tumor characteristics",
|
||||
"stage",
|
||||
"grade"))))%>%
|
||||
|
||||
# and you can then indent the actual variables
|
||||
modify_column_indent(columns=label, rows=variable%in%c("age",
|
||||
"stage",
|
||||
"grade"))%>%
|
||||
|
||||
# and double indent their levels
|
||||
modify_column_indent(columns=label, rows= (variable%in%c("stage",
|
||||
"grade")
|
||||
& row_type=="level"),
|
||||
double_indent=T)
|
||||
|
||||
```
|
||||
117
1 PA Decline/regular_fun.R
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
## ItMLiHSmar2022
|
||||
## regular_fun.R, child script
|
||||
## Regularisation model building function
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
regular_fun<-function(X,y,K,lambdas,alpha){
|
||||
n<-nrow(X)
|
||||
set.seed(321)
|
||||
|
||||
# Using caret function to ensure both levels represented in all folds
|
||||
c<-createFolds(y=y, k = K, list = FALSE, returnTrain = TRUE)
|
||||
|
||||
B<-yhatTestProbKeep<-list()
|
||||
accTrain<-accTest<-err_train<-err_test<-auc_train<-auc_test<-matrix(nrow = K,ncol = length(lambdas))
|
||||
|
||||
catinfo<-levels(y)
|
||||
|
||||
cMatTrain<-cMatTest<-table(true=factor(c(0,0),levels=catinfo),pred=factor(c(0,0),levels=catinfo))
|
||||
|
||||
|
||||
## Iterate over partitions
|
||||
for (idx1 in 1:K){
|
||||
|
||||
# Status
|
||||
cat('Processing fold', idx1, 'of', K,'\n')
|
||||
|
||||
# idx1=1
|
||||
# Get training- and test sets
|
||||
I_train = c!=idx1 ## Creating selection vector of TRUE/FALSE
|
||||
I_test = !I_train
|
||||
|
||||
Xtrain = X[I_train,]
|
||||
ytrain = y[I_train]
|
||||
Xtest = X[I_test,]
|
||||
ytest = y[I_test]
|
||||
|
||||
|
||||
## Model matrices for glmnet
|
||||
## Using the complicated approach not to include first level.
|
||||
# Xmat.train<-model.matrix(~ .-1, data=Xtrain,
|
||||
# contrasts.arg = lapply(Xtrain[,sapply(Xtrain, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
# Xmat.test<-model.matrix(~ .-1, data=Xtest,
|
||||
# contrasts.arg = lapply(Xtest[,sapply(Xtest, is.factor)],
|
||||
# contrasts, contrasts=T))
|
||||
|
||||
# Xmat.train<-model.matrix(~.-1,Xtrain)
|
||||
# Xmat.test<-model.matrix(~.-1,Xtest)
|
||||
|
||||
# Weights
|
||||
ytrain_weight<-as.vector(1 - (table(ytrain)[ytrain] / length(ytrain)))
|
||||
# ytest_weight<-as.vector(1 / (table(ytest)[ytest] / length(ytest)))
|
||||
|
||||
# Fit regularized linear regression model
|
||||
mod<-glmnet(Xtrain, ytrain,
|
||||
alpha = alpha, ## Alpha = 1 for lasso
|
||||
lambda = lambdas, ## Setting lambdas
|
||||
standardize = TRUE, ## Scales and centers
|
||||
weights = ytrain_weight,
|
||||
family = "binomial"
|
||||
)
|
||||
|
||||
# Keep coefficients for plot
|
||||
B[[idx1]] <- as.matrix(coef(mod))
|
||||
|
||||
# Iterate over regularization strengths to compute training- and test
|
||||
# errors for individual regularization strengths.
|
||||
for (idx2 in 1:length(lambdas)){
|
||||
# idx2=1
|
||||
|
||||
# Predict
|
||||
yhatTrainProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtrain),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
yhatTestProb<-predict(mod,
|
||||
s = lambdas[idx2],
|
||||
newx = data.matrix(Xtest),
|
||||
type = "response"
|
||||
)
|
||||
|
||||
# Compute training and test error
|
||||
yhatTrain = round(yhatTrainProb)
|
||||
yhatTest = round(yhatTestProb)
|
||||
|
||||
# Make predictions categorical again (instead of 0/1 coding)
|
||||
yhatTrainCat = factor(round(yhatTrainProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
yhatTestCat = factor(round(yhatTestProb),levels=c("0","1"),labels=catinfo,ordered = TRUE)
|
||||
|
||||
# Evaluate classifier performance
|
||||
# Accuracy
|
||||
# accTrain[idx1,idx2] <- sum(yhatTrainCat==ytrain)/length(ytrain)
|
||||
# accTest [idx1,idx2] <- sum(yhatTestCat==ytest)/length(ytest)
|
||||
# #
|
||||
# # Error rate
|
||||
# err_train[idx1,idx2] = 1 - accTrain[idx1,idx2]
|
||||
# err_test [idx1,idx2] = 1 - accTest[idx1,idx2]
|
||||
|
||||
# AUROC
|
||||
suppressMessages(
|
||||
auc_train[idx1,idx2]<-auc(ytrain, yhatTrainCat))
|
||||
suppressMessages(
|
||||
auc_test [idx1,idx2]<-auc(ytest, yhatTestCat))
|
||||
|
||||
# Compute confusion matrices
|
||||
cMatTrain = cMatTrain + table(true=ytrain,pred=yhatTrainCat)
|
||||
cMatTest = cMatTest + table(true=ytest,pred=yhatTestCat)
|
||||
}
|
||||
}
|
||||
ls<-list(mod=mod,B=B,auc_train=auc_train,auc_test=auc_test,cMatTrain=cMatTrain,cMatTest=cMatTest)
|
||||
return(ls)
|
||||
}
|
||||
150
1 PA Decline/regularisation_steps.R
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
## ItMLiHSmar2022
|
||||
## regularisation_steps.R, child script
|
||||
## Regularised model building and analysation for assignment
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
##
|
||||
## Now modified to use in publication
|
||||
##
|
||||
|
||||
## ====================================================================
|
||||
## Step 0: data import and wrangling
|
||||
## ====================================================================
|
||||
|
||||
setwd("/Users/au301842/PhysicalActivityandStrokeOutcome/1 PA Decline/")
|
||||
|
||||
# source("data_format.R")
|
||||
y1<-factor(as.integer(y)-1) ## Outcome is required to be factor of 0 or 1.
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 1: settings
|
||||
## ====================================================================
|
||||
|
||||
## Folds
|
||||
K=10
|
||||
set.seed(3)
|
||||
c<-caret::createFolds(y=y,
|
||||
k = K,
|
||||
list = FALSE,
|
||||
returnTrain = TRUE) # Foldids for alpha tuning
|
||||
|
||||
## Defining tuning parameters
|
||||
lambdas=2^seq(-10, 5, 1)
|
||||
alphas<-seq(0,1,.1)
|
||||
|
||||
## Weights for models
|
||||
weighted=TRUE
|
||||
if (weighted == TRUE) {
|
||||
wght<-as.vector(1 - (table(y)[y] / length(y)))
|
||||
} else {
|
||||
wght <- rep(1, nrow(y))
|
||||
}
|
||||
|
||||
|
||||
## Standardise numeric
|
||||
## Centered and
|
||||
|
||||
|
||||
|
||||
## ====================================================================
|
||||
## Step 2: all cross validations for each alpha
|
||||
## ====================================================================
|
||||
|
||||
library(furrr)
|
||||
library(purrr)
|
||||
library(doMC)
|
||||
registerDoMC(cores=6)
|
||||
|
||||
# Nested CVs with analysis for all lambdas for each alpha
|
||||
#
|
||||
set.seed(3)
|
||||
cvs <- future_map(alphas, function(a){
|
||||
cv.glmnet(model.matrix(~.-1,X),
|
||||
y1,
|
||||
weights = wght,
|
||||
lambda=lambdas,
|
||||
type.measure = "deviance", # This is standard measure and recommended for tuning
|
||||
foldid = c, # Per recommendation the folds are kept for alpha optimisation
|
||||
alpha=a,
|
||||
standardize=TRUE,
|
||||
family=quasibinomial,
|
||||
keep=TRUE) # Same as binomial, but not as picky
|
||||
})
|
||||
|
||||
## ====================================================================
|
||||
# Step 3: optimum lambda for each alpha
|
||||
## ====================================================================
|
||||
|
||||
|
||||
# For each alpha, lambda is chosen for the lowest meassure (deviance)
|
||||
each_alpha <- sapply(seq_along(alphas), function(id) {
|
||||
each_cv <- cvs[[id]]
|
||||
alpha_val <- alphas[id]
|
||||
index_lmin <- match(each_cv$lambda.min,
|
||||
each_cv$lambda)
|
||||
c(lamb = each_cv$lambda.min,
|
||||
alph = alpha_val,
|
||||
cvm = each_cv$cvm[index_lmin])
|
||||
})
|
||||
|
||||
# Best lambda
|
||||
best_lamb <- min(each_alpha["lamb", ])
|
||||
|
||||
# Alpha is chosen for best lambda with lowest model deviance, each_alpha["cvm",]
|
||||
best_alph <- each_alpha["alph",][each_alpha["cvm",]==min(each_alpha["cvm",]
|
||||
[each_alpha["lamb",] %in% best_lamb])]
|
||||
|
||||
## https://stackoverflow.com/questions/42007313/plot-an-roc-curve-in-r-with-ggplot2
|
||||
p_roc<-roc.glmnet(cvs[[1]]$fit.preval, newy = y)[[match(best_alph,alphas)]]|> # Plots performance from model with best alpha
|
||||
ggplot(aes(FPR,TPR)) +
|
||||
geom_step() +
|
||||
coord_cartesian(xlim=c(0,1), ylim=c(0,1)) +
|
||||
geom_abline()+
|
||||
theme_bw()
|
||||
|
||||
## ====================================================================
|
||||
# Step 4: Creating the final model
|
||||
## ====================================================================
|
||||
|
||||
source("regular_fun.R") # Custom function
|
||||
optimised_model<-regular_fun(X,y1,K,lambdas=best_lamb,alpha=best_alph)
|
||||
# With lambda and alpha specified, the function is just a k-fold cross-validation wrapper,
|
||||
# but keeps model performance figures from each fold.
|
||||
|
||||
list2env(optimised_model,.GlobalEnv)
|
||||
# Function outputs a list, which is unwrapped to Env.
|
||||
# See source script for reference.
|
||||
|
||||
## ====================================================================
|
||||
# Step 5: creating table of coefficients for inference
|
||||
## ====================================================================
|
||||
|
||||
Bmatrix<-matrix(unlist(B),ncol=10)
|
||||
Bmedian<-apply(Bmatrix,1,median)
|
||||
Bmean<-apply(Bmatrix,1,mean)
|
||||
|
||||
reg_coef_tbl<-tibble(
|
||||
name = c("Intercept",Hmisc::label(X)),
|
||||
medianX = round(Bmedian,5),
|
||||
ORmed = round(exp(Bmedian),5),
|
||||
meanX = round(Bmean,5),
|
||||
ORmea = round(exp(Bmean),5))%>%
|
||||
# arrange(desc(abs(medianX)))%>%
|
||||
gt()
|
||||
|
||||
## ====================================================================
|
||||
# Step 6: plotting predictive performance
|
||||
## ====================================================================
|
||||
|
||||
reg_cfm<-confusionMatrix(cMatTest)
|
||||
reg_auc_sum<-summary(auc_test[,1])
|
||||
|
||||
## ====================================================================
|
||||
# Step 7: Packing list to save in loop
|
||||
## ====================================================================
|
||||
|
||||
ls[[i]] <- list("RegularisedCoefs"=reg_coef_tbl,
|
||||
"bestA"=best_alph,
|
||||
"bestL"=best_lamb,
|
||||
"ConfusionMatrx"=reg_cfm,
|
||||
"AUROC"=reg_auc_sum)
|
||||
29
1 PA Decline/repeated measures.R
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# ds <- readr::read_csv(here::here("/Volumes/Data/REDCap/DDV/talos_ddv.csv"))
|
||||
|
||||
|
||||
# Tun first 3 lines of code in 00_master.R
|
||||
|
||||
# Label attributes are removed then pivoted to long
|
||||
df <- purrr::map(X_tbl,\(.x){
|
||||
# browser()
|
||||
class(.x) <- class(.x)[-1]
|
||||
.x
|
||||
}) |>
|
||||
dplyr::bind_cols() |>
|
||||
dplyr::mutate(id=dplyr::row_number()) |>
|
||||
dplyr::select(id,dplyr::everything()) |>
|
||||
tidyr::pivot_longer(c("pase_0","pase_6"),names_to = "time",values_to = "pase") |>
|
||||
dplyr::mutate(time = as.numeric(factor(time))-1)
|
||||
|
||||
lme4::lmer(formula = pase~age+male_sex+hypertension+diabetes+nihss_c+(1|id),data = df) |>
|
||||
gtsummary::tbl_regression()
|
||||
|
||||
summary(df$male_sex)
|
||||
|
||||
df |>
|
||||
dplyr::mutate(dplyr::across(c("id","hypertension","diabetes","time"),\(.x)factor(.x)),
|
||||
female=male_sex==1) |>
|
||||
(\(.x){
|
||||
mmrm::mmrm(formula = pase~age+female+hypertension+diabetes+nihss_c+us(time|id),data=.x)
|
||||
})() |> gtsummary::tbl_regression()
|
||||
|
||||
56
1 PA Decline/sankey individual.R
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
ds <- readr::read_csv(here::here("/Volumes/Data/REDCap/DDV/talos_ddv.csv"))
|
||||
|
||||
df_raw <- ds |>
|
||||
dplyr::filter(!pase_score_missings_0, !pase_score_missings_4) |>
|
||||
dplyr::transmute(
|
||||
id = dplyr::row_number(),
|
||||
pase_0 = pase_score_sum_0,
|
||||
pase_4 = pase_score_sum_4,
|
||||
pase_0_cut = as.numeric(stRoke::quantile_cut(
|
||||
x = pase_0,
|
||||
groups = 4,
|
||||
group.names = paste0(1:4)
|
||||
)),
|
||||
pase_6_cut = as.numeric(stRoke::quantile_cut(
|
||||
x = pase_4,
|
||||
y = pase_0,
|
||||
groups = 4,
|
||||
inc.outs = TRUE,
|
||||
group.names = paste0(1:4)
|
||||
)),
|
||||
pase_diff = pase_4 - pase_0,
|
||||
pase_diff_rel = pase_diff / pase_0,
|
||||
pase_0_rank = rank(pase_0, ties.method = "first"),
|
||||
pase_4_rank = rank(pase_4, ties.method = "first"),
|
||||
change = dplyr::case_when(
|
||||
pase_0_cut %in% 2:4 & pase_6_cut == 1 ~ "drop",
|
||||
pase_6_cut %in% 2:4 & pase_0_cut == 1 ~ "hop",
|
||||
pase_0_cut %in% 2:4 & pase_6_cut %in% 2:4 ~ "hh",
|
||||
pase_0_cut %in% 1 & pase_6_cut == 1 ~ "ll"
|
||||
),
|
||||
change_any = factor(dplyr::case_when(
|
||||
pase_6_cut > pase_0_cut ~ "hop",
|
||||
pase_6_cut < pase_0_cut ~ "drop",
|
||||
pase_0_cut %in% 2:4 & pase_6_cut %in% 2:4 ~ "hh",
|
||||
pase_0_cut %in% 1 & pase_6_cut == 1 ~ "ll"
|
||||
)),
|
||||
change_rel = factor(dplyr::case_when(
|
||||
pase_diff_rel > .5 ~ "hop",
|
||||
pase_diff_rel < -.5 ~ "drop",
|
||||
.default = "stat"
|
||||
))
|
||||
)
|
||||
|
||||
df_raw |> skimr::skim()
|
||||
|
||||
df_long <- df_raw |>
|
||||
dplyr::select(pase_0_rank, pase_4_rank, change_rel,id) |>
|
||||
tidyr::pivot_longer(dplyr::starts_with("pase_"), names_to = "time", values_to = "pase")
|
||||
|
||||
df_long <- df_raw |>
|
||||
dplyr::select(pase_0, pase_4, change_rel,id) |>
|
||||
tidyr::pivot_longer(dplyr::starts_with("pase_"), names_to = "time", values_to = "pase")
|
||||
|
||||
ggplot(df_long, aes(x = time, y = pase,group=id,colour = change_rel)) +
|
||||
geom_line()+
|
||||
facet_wrap(~change_rel)
|
||||
155
1 PA Decline/sankey.R
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
|
||||
# source("1 PA Decline/data_format.R")
|
||||
|
||||
# NEW QUARTILES
|
||||
|
||||
df <- X_tbl |> select(pase_0_cut,pase_6_cut)
|
||||
|
||||
df$change <- factor(ifelse(
|
||||
df$pase_0_cut %in% 2:4 & df$pase_6_cut == 1,
|
||||
"drop",
|
||||
ifelse(
|
||||
df$pase_6_cut %in% 2:4 & df$pase_0_cut == 1,
|
||||
"hop",
|
||||
"no"
|
||||
)))
|
||||
|
||||
|
||||
# Visuals - sankey
|
||||
# https://stackoverflow.com/questions/50395027/beautifying-sankey-alluvial-visualization-using-r
|
||||
|
||||
|
||||
## Painting
|
||||
|
||||
df <- df |> count(pase_0_cut,pase_6_cut,change)
|
||||
|
||||
|
||||
lbs0 <-
|
||||
c(
|
||||
paste0("1st \n(n=", sum(df$n[df$pase_0_cut == "1"]), ")"),
|
||||
paste0("2nd \n(n=", sum(df$n[df$pase_0_cut == "2"]), ")"),
|
||||
paste0("3rd \n(n=", sum(df$n[df$pase_0_cut == "3"]), ")"),
|
||||
paste0("4th \n(n=", sum(df$n[df$pase_0_cut == "4"]), ")")
|
||||
)
|
||||
|
||||
|
||||
lbs6 <-
|
||||
c(
|
||||
paste0("1st \n(n=", sum(df$n[df$pase_6_cut == "1"]), ")"),
|
||||
paste0("2nd \n(n=", sum(df$n[df$pase_6_cut == "2"]), ")"),
|
||||
paste0("3rd \n(n=", sum(df$n[df$pase_6_cut == "3"]), ")"),
|
||||
paste0("4th \n(n=", sum(df$n[df$pase_6_cut == "4"]), ")")
|
||||
)
|
||||
|
||||
|
||||
levels(df$pase_0_cut)<-lbs0[1:length(levels(df$pase_0_cut))]
|
||||
levels(df$pase_6_cut)<-lbs6[1:length(levels(df$pase_6_cut))]
|
||||
|
||||
df$pase_0_cut <- factor(df$pase_0_cut, levels=rev(levels(df$pase_0_cut)))
|
||||
df$pase_6_cut <- factor(df$pase_6_cut, levels=rev(levels(df$pase_6_cut)))
|
||||
|
||||
df$change <- factor(df$change, levels=c("no", "drop", "hop"))
|
||||
|
||||
|
||||
hops <- "#66c1a3" # grey
|
||||
# drops <- "#990033" # Midtrød
|
||||
drops <- "#CE0045" #Lighter Midtrød
|
||||
nos <- "grey90" # Light grey
|
||||
|
||||
# border <- "#00596B"
|
||||
# box <- "#008099"
|
||||
|
||||
border <- "#EA571D"
|
||||
box <- "#1E4B66"
|
||||
|
||||
|
||||
cls <- c(nos, drops, hops)
|
||||
|
||||
alpha <- 0.7
|
||||
|
||||
library(ggalluvial)
|
||||
|
||||
p_delta <- ggplot(df,aes(y = n, axis1 = pase_0_cut, axis2 = pase_6_cut)) +
|
||||
geom_alluvium(
|
||||
aes(fill = change, color = change),
|
||||
width = 1 / 16,
|
||||
alpha = alpha,
|
||||
knot.pos = 0.4
|
||||
) +
|
||||
geom_stratum(aes(size=10),width = 1 / 4,
|
||||
fill = box,
|
||||
color = border) +
|
||||
geom_text(stat = "stratum", aes(label = after_stat(stratum)), colour = "white", size = 20) +
|
||||
scale_x_continuous(breaks = 1:2,
|
||||
labels = c("Pre-stroke\nquartile", "Six months\nquartile")) +
|
||||
scale_fill_manual(values = cls) +
|
||||
scale_color_manual(values = cls) +
|
||||
ggtitle("Change in PA\nafter stroke")
|
||||
|
||||
|
||||
# plotly::ggplotly(p_delta)
|
||||
|
||||
png(
|
||||
filename = "sankey_change_PhDDay.png",
|
||||
units = "mm",
|
||||
width = 100,
|
||||
height = 200,
|
||||
pointsize = 15,
|
||||
res = 300
|
||||
); p_delta +
|
||||
theme_minimal() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
panel.grid.major = element_blank(),
|
||||
panel.grid.minor = element_blank(),
|
||||
axis.text.y = element_blank(),
|
||||
axis.title.y = element_blank(),
|
||||
axis.text.x = element_text(size = 14, face = "bold"),
|
||||
plot.title = element_text(hjust = 0.5, vjust = 1, size = 30, face = "bold")
|
||||
); dev.off()
|
||||
|
||||
|
||||
png(
|
||||
filename = "sankey_change_PhDDay_min.png",
|
||||
units = "mm",
|
||||
width = 500,
|
||||
height = 500,
|
||||
pointsize = 15,
|
||||
res = 300
|
||||
); p_delta+
|
||||
theme_minimal() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
panel.grid.major = element_blank(),
|
||||
panel.grid.minor = element_blank(),
|
||||
axis.text.y = element_blank(),
|
||||
axis.title.y = element_blank(),
|
||||
axis.text.x = element_blank(),
|
||||
plot.title = element_blank(),
|
||||
panel.background = element_rect(fill='transparent'),
|
||||
plot.background = element_rect(fill='transparent', color=NA)
|
||||
); dev.off()
|
||||
|
||||
|
||||
|
||||
png(
|
||||
filename = "sankey_change_ESOC23.png",
|
||||
units = "mm",
|
||||
width = 500,
|
||||
height = 500,
|
||||
pointsize = 60,
|
||||
res = 300
|
||||
); p_delta +
|
||||
theme_minimal() +
|
||||
theme(
|
||||
legend.position = "none",
|
||||
panel.grid.major = element_blank(),
|
||||
panel.grid.minor = element_blank(),
|
||||
axis.text.y = element_blank(),
|
||||
axis.title.y = element_blank(),
|
||||
axis.text.x = element_blank(),
|
||||
plot.title = element_blank(),
|
||||
panel.background = element_rect(fill='transparent'),
|
||||
plot.background = element_rect(fill='transparent', color=NA)
|
||||
); dev.off()
|
||||
|
||||
BIN
1 PA Decline/sankey_change_ARTICLEA.pdf
Normal file
BIN
1 PA Decline/sankey_change_ARTICLEA.png
Normal file
|
After Width: | Height: | Size: 971 KiB |
BIN
1 PA Decline/sankey_change_ARTICLEA_ejn.png
Normal file
|
After Width: | Height: | Size: 362 KiB |
BIN
1 PA Decline/sankey_change_ESOC23.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
1 PA Decline/sankey_change_PhDDay.png
Normal file
|
After Width: | Height: | Size: 375 KiB |
BIN
1 PA Decline/sankey_change_PhDDay_min.png
Normal file
|
After Width: | Height: | Size: 402 KiB |
41
1 PA Decline/standardise.R
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
## ItMLiHSmar2022
|
||||
## standardise.R, child script
|
||||
## Data standardisation, returns list
|
||||
## Andreas Gammelgaard Damsbo, agdamsbo@clin.au.dk
|
||||
|
||||
standardise<-function(train,test,type){
|
||||
# From:
|
||||
# https://datascience.stackexchange.com/questions/13971/standardization-normalization-test-data-in-r
|
||||
|
||||
sel<-sapply(Xtrain,is.numeric) # Deciding which to stadardise (only numeric)
|
||||
cnm<-colnames(Xtrain) # Saving column names for ordering
|
||||
|
||||
# Subsetting
|
||||
|
||||
## Data to treat
|
||||
train.tr<-train[,sel]
|
||||
test.tr<-test[,sel]
|
||||
|
||||
## Data to save
|
||||
train.sv<-train[,!sel]
|
||||
test.sv<-test[,!sel]
|
||||
|
||||
# Calculate mean and SD of train data
|
||||
trainMean <- sapply(train.tr,mean)
|
||||
trainSd <- sapply(train.tr,sd)
|
||||
|
||||
if (type=="c"){
|
||||
## centered
|
||||
norm.trainData<-sweep(train.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
norm.testData<-sweep(test.tr, 2L, trainMean) # using the default "-" to subtract mean column-wise
|
||||
}
|
||||
|
||||
if (type=="cs"){
|
||||
## centered AND scaled (Z-score standardisation)
|
||||
norm.trainData<-sweep(sweep(train.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
norm.testData<-sweep(sweep(test.tr, 2L, trainMean), 2, trainSd, "/")
|
||||
}
|
||||
return(list(XtrainSt=cbind(norm.trainData,train.sv)[,cnm], # Reordering columns to original
|
||||
XtestSt=cbind(norm.testData,test.sv)[,cnm]))
|
||||
}
|
||||
|
||||
109
1 PA Decline/summaries.qmd
Normal file
|
|
@ -0,0 +1,109 @@
|
|||
---
|
||||
title: "Article A: Final renders"
|
||||
format: docx
|
||||
editor: visual
|
||||
---
|
||||
|
||||
```{r}
|
||||
# ds <- readr::read_csv(here::here("/Volumes/Data/REDCap/DDV/talos_ddv.csv"))
|
||||
source(here::here("2 Longterm/data.R"))
|
||||
# The original functions from DST unedited
|
||||
source(here::here("1 PA Decline/Fra DDV/functions200411.R"))
|
||||
source(here::here("1 PA Decline/Fra DDV/functions240418.R"))
|
||||
# Modified functions to overwrite original
|
||||
source(here::here("R/functions.R"))
|
||||
```
|
||||
|
||||
Files and resources used for article ready data:
|
||||
|
||||
- "2 Longterm/data.R"
|
||||
|
||||
- "R/functions240319.R"
|
||||
|
||||
```{r}
|
||||
# ds |> finalfit::missing_plot()
|
||||
```
|
||||
|
||||
On handling missings: https://finalfit.org/articles/missing.html
|
||||
|
||||
```{r}
|
||||
# unique(df_long$variable)
|
||||
```
|
||||
|
||||
```{r}
|
||||
pred_data <- df_ddv |>
|
||||
dplyr::tibble() |>
|
||||
dplyr::mutate_all(as.character) |>
|
||||
ready_clin() |>
|
||||
data_formatting() |>
|
||||
prediction_ready() |>
|
||||
dplyr::mutate(
|
||||
dplyr::across(
|
||||
c(
|
||||
tidyselect::starts_with("pase_"),
|
||||
"age"
|
||||
),
|
||||
as.numeric
|
||||
)
|
||||
)
|
||||
|
||||
pred_data |> labelling_data() |> readr::write_rds("labelled_test.rds")
|
||||
|
||||
skimr::skim(pred_data)
|
||||
|
||||
wilcox.test(pred_data$pase_0, pred_data$pase_4, paired = TRUE)
|
||||
```
|
||||
|
||||
```{r}
|
||||
pred_data |>
|
||||
true_pred_sum_plot() |>
|
||||
gtsummary::as_gt() |>
|
||||
# add_var_groups_gt()|>
|
||||
gt::gtsave(filename = here::here("1 PA Decline/table1.docx"))
|
||||
system2("open",here::here("'1 PA Decline/table1.docx'"))
|
||||
# gtsummary2docx(path=here::here("1 PA Decline/table1.docx"))
|
||||
```
|
||||
|
||||
```{r}
|
||||
pred_data |>
|
||||
dplyr::mutate(reg_female = dplyr::if_else(reg_female, "Female", "Male")) |>
|
||||
pase_cutter(drop.pase = FALSE) |>
|
||||
dplyr::select(pase_change, dplyr::everything()) |>
|
||||
summary_tblone(by = "reg_female", missing = "no") |>
|
||||
gtsummary::modify_column_hide("stat_0") |>
|
||||
gtsummary::add_p() |>
|
||||
gtsummary::bold_p() |>
|
||||
micRo::mask_micro_summary() |>
|
||||
gtsummary::as_gt() |>
|
||||
gt::gtsave(filename = here::here("1 PA Decline/table_bysex.docx"))
|
||||
```
|
||||
|
||||
```{r}
|
||||
skimr::skim(pred_data)
|
||||
```
|
||||
|
||||
## Excluded patients
|
||||
|
||||
```{r}
|
||||
df_ddv |>
|
||||
dplyr::tibble() |>
|
||||
dplyr::mutate_all(as.character) |>
|
||||
ready_clin() |>
|
||||
data_formatting()|>
|
||||
get_vars(c("clin","lifestyle","ses", "assess.pred")) |>
|
||||
dplyr::mutate(exclude=ifelse(is.na(pase_0)|is.na(pase_4),"Excluded","Included"),
|
||||
age=as.numeric(age),
|
||||
pase_0=as.numeric(pase_0),
|
||||
pase_4=as.numeric(pase_4)
|
||||
)|>
|
||||
# dplyr::select(-pase_0,-pase_4) |>
|
||||
#dplyr::select(exclude,soc_status_nowork, fam_indk_hl, edu_level_hl)|>
|
||||
gtsummary::tbl_summary(by=exclude, missing = "ifany") |>
|
||||
gtsummary::add_p() |>
|
||||
fix_labels() |>
|
||||
gtsummary::as_gt() |>
|
||||
gt::gtsave("1 PA Decline/summary_by_missing.docx")
|
||||
#|>
|
||||
# mask_micro_summary(micro.n = 5)
|
||||
|
||||
```
|
||||