В будущем, пожалуйста, опубликуйте ваши данные в формате, который люди смогут скопировать и вставить в консоль. Обычно люди используют dput
для этого.
Если вы хотите, чтобы каждый столбец имел оценку выживаемости по группам, сначала подберите соответствие и поместите результаты в data.frame. Тогда выкладывайте результаты. Если вы переключите time ~strata
на strata ~ time
, тогда ваш препарат будет отображаться в столбце, а не в именах столбцов.
library(survival)
library(data.table)
library(dplyr)
fit1 <- survfit(Surv(time,status)~sex,data = lung)
#get time point estimates
#just example time points for my data
#replace times with times = c(1,5,10)
sum_fit1 <- summary(fit1, times = c(150,365,800))
#put into dataframe and pull out relevant information
fit1_df <- data.frame(sum_fit1[c(2:6,8:11)],stringsAsFactors = FALSE) %>%
#change the strata column to make it more readable
mutate(strata = ifelse(strata == "sex=1", "Male","Females"))
#transpose data and columns you want in summary table
fit1_df2 <- dcast(
setDT(fit1_df)
, time ~ strata
, value.var = c("n.risk"
,"n.event", "surv","std.err","lower","upper"))