Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Логистическая регрессия?
Форум врачей-аспирантов > Разделы форума > Медицинская статистика
Страницы: 1, 2
mamalita
Добрый день! Прошу помощи в анализе данных. Мы имеем 100 человека больных с метастазами в печени, лечили их хирургическим путем и наблюдали их в течение 6 лет и диагностировали у них новые метастазы и рецидивы. Суть работы заключается в том, чтобы доказать, что реже всего на 1 и 2 годах наблюдения новые МТС возникают у пациентов с количеством МТС 2-3 (у нас были варианты количества от 2-6), и размер их должен быть 2-3 см. То есть кривая частоты прогресии имеет форму колокола обращенного вершиной вниз - 1 см - часто возникает прогрессия, больше 3 - тоже. Наиболее оптимальным является размер очага для хирургического лечения 2-3 см. Вопрос как представить эти данные и их анализировать: средний и суммарный размер не учитывают разницы: то ли у больного было 3 очага по 2 см то ли 1 и 6 см что совсем не благоприятно. Если брать каждый метастаз как отдельную переменную то у разных людей будет разное количество переменных (от 2 до 6штук), но этот вариант наиболее приемлем в соответствии с поставленной задачей. Теперь вопрос каким методом воспользоваться, чтобы доказать что идеальным для лечения является количество МТС 2-3 при размере 2-3см. Еще момент : размер МТС имеет мини манимальное округление до 0, 5 разброс от 1 до 6 см (т.е. всего 12 значений). Может быть их можно как-то объединить и логически видоизменить? Я уже просто голову сломала. Очень нужен свежий взгляд. Спасибо
p2004r
Цитата(mamalita @ 9.11.2011 - 10:07) *
Может быть их можно как-то объединить и логически видоизменить?


заменяем размеры плотностью их распределением

plot(density(c(первый,второй, остальные если есть),
from=0,to="максимального из всех ста"))

density()$y это набор фиксированных точек отражающий плотность распределения размера. Вне зависимости от числа метастазов это фиксированный набор переменных.

Ну или гистограмму строим, выбираем интервалы группировки и строим набор переменных соответсвующий интервалам группировки (сколько образований в каждый попало).
mamalita
Познания у меня не очень глубокие, поэтому не совсем Вас поняла. Плотность распределения размеров МТС у каждого больного? Или вообще плотность распределения размеров на всю выборку, тогда как выявить зависимость появления новых МТС.У меня программа Statistica 6, attestat. Спасибо за помощь!
Игорь
Цитата(mamalita @ 9.11.2011 - 11:07) *
Добрый день! Прошу помощи в анализе данных. Мы имеем 100 человека больных с метастазами в печени, лечили их хирургическим путем и наблюдали их в течение 6 лет и диагностировали у них новые метастазы и рецидивы. Суть работы заключается в том, чтобы доказать, что реже всего на 1 и 2 годах наблюдения новые МТС возникают у пациентов с количеством МТС 2-3 (у нас были варианты количества от 2-6), и размер их должен быть 2-3 см. То есть кривая частоты прогресии имеет форму колокола обращенного вершиной вниз - 1 см - часто возникает прогрессия, больше 3 - тоже. Наиболее оптимальным является размер очага для хирургического лечения 2-3 см. Вопрос как представить эти данные и их анализировать: средний и суммарный размер не учитывают разницы: то ли у больного было 3 очага по 2 см то ли 1 и 6 см что совсем не благоприятно. Если брать каждый метастаз как отдельную переменную то у разных людей будет разное количество переменных (от 2 до 6штук), но этот вариант наиболее приемлем в соответствии с поставленной задачей. Теперь вопрос каким методом воспользоваться, чтобы доказать что идеальным для лечения является количество МТС 2-3 при размере 2-3см. Еще момент : размер МТС имеет мини манимальное округление до 0, 5 разброс от 1 до 6 см (т.е. всего 12 значений). Может быть их можно как-то объединить и логически видоизменить? Я уже просто голову сломала. Очень нужен свежий взгляд. Спасибо

Несколько сумбурно, но, думаю, в процессе работы задача уточнится.

1. Обучение модели.
Можно попробовать логистическую регрессию. Для начала взять 2 переменные: количество МТС и размер. Т.о., для каждого пациента будет одна строка из трех чисел: количество, размер, наличие рецидива (0 или 1). Эти данные ввести в программу и посчитать регрессию. Оценить ее качество путем построения ROC кривой и выбора оптимального (важного для исследователя) порога.

2. Распознавание.
При вводе новых данных (размер, количество) вычисленный результат регрессии можно будет интерпретировать как вероятность появления рецидива. С учетом порога, выбранного выше, результат может быть огрублен до бинарной переменной (появится симптом или не появится). Можно посчитать и другие параметры (шансы и т.д.).

При дальнейшей работе, возможно, модель уточнится путем ввода дополнительных параметров, которые исследователь сочтет важными для результата.
mamalita
В том то и проблема - какой размер брать. Когда у одного больного 2 метастаза: 1 см и 5 см, у второго 5 метастазов по 1 см, у третьего 4 метастаза: 1см, 2см, 4см, 3см и т.д., т.е. среднее не будет полноценно отражать проблему, т.к. нужно доказать что максимально эффективно излечиваются очаги размером 2-3 см, а наличие мелких или наоборот больших образований в разы ухудшает прогноз и повышает частоту развития рецидивов. Возможно опять объяснила сумбурно, обязательно напишите, постараюсь исправиться.
DrgLena
Трудность понятна, есть не просто число, но и размер к каждому числу.
Если вы хотите доказать имеющуюся у вас клиническую гипотезу о лучшем исходе для определенной комбинации признаков, то и создайте те группы сравнения, которые вам необходимы. Есть два исходных параметра - число МТС и их величина. По числу, выделите две группы "0" 2-3, и альтернативная вторая группа "1" >3-х МТС, также и по величине "0" 2-3 см и "1" >3см. Т.о. вы имеете уже 4 группы по сочетанию двух созданных вами групп сравнения 00 (лучший исход), 01,10,11(худщая комбинация). А теперь, посмотрите их различия по выживаемости, длительности без рецидивного или без метастатического течения, начните с кривых Каплан- Майера, если конечно для этого есть данные, т.е. есть время операции и время диагностики нового рецидива. Если различия будут, то можно эти две бинарные переменные использовать в дальнейшем моделировании, где будут и другие предикторы, например, гистологический клеточный тип (в виде бинарной переменной - благоприятный или нет) или возраст больного.
p2004r
Цитата(mamalita @ 10.11.2011 - 11:35) *
Познания у меня не очень глубокие, поэтому не совсем Вас поняла. Плотность распределения размеров МТС у каждого больного? Или вообще плотность распределения размеров на всю выборку, тогда как выявить зависимость появления новых МТС.У меня программа Statistica 6, attestat. Спасибо за помощь!


Ну R наверняка заработает на Вашем компьютере smile.gif

1 плотность считать у каждого больного, на выходе получается замена "2 и более переменных" на фиксированное число переменных отражающих плотность распределения.

2 интервалы группировки находим в гистограмме всей выборки. Затем применяем к каждому больному. Эффект тот же "2 и более чисел" заменяется числом попаданий в интервалы группировки.

Выкладывайте пример данных попробуем вместе написать код.
mamalita
Цитата(DrgLena @ 10.11.2011 - 23:49) *
Есть два исходных параметра - число МТС и их величина. По числу, выделите две группы "0" 2-3, и альтернативная вторая группа "1" >3-х МТС, также и по величине "0" 2-3 см и "1" >3см. Т.о. вы имеете уже 4 группы по сочетанию двух созданных вами групп сравнения 00 (лучший исход), 01,10,11(худщая комбинация). А теперь, посмотрите их различия по выживаемости, длительности без рецидивного или без метастатического течения, начните с кривых Каплан- Майера, если конечно для этого есть данные, т.е. есть время операции и время диагностики нового рецидива. Если различия будут, то можно эти две бинарные переменные использовать в дальнейшем моделировании, где будут и другие предикторы, например, гистологический клеточный тип (в виде бинарной переменной - благоприятный или нет) или возраст больного.

В целом Вашу мысль я поняла, но как группировать тех у кого 1 мтс - 1 см, второй - 3 см, третий 5см.

Пример данных прилагаю. Как загрузить R и какое-нибудь руководство к ней.
mamalita
приложенные данные
p2004r
Цитата(mamalita @ 13.11.2011 - 10:29) *
Пример данных прилагаю. Как загрузить R и какое-нибудь руководство к ней.


руководство по R на русском языке http://m7876.wiki.zoho.com/Introduction-to-R.html

сам R берем с крана http://cran.r-project.org/

Для виндовс
http://cran.r-project.org/bin/windows/base/
p2004r
Цитата(mamalita @ 13.11.2011 - 10:34) *
приложенные данные


часть 1 smile.gif Импорт данных


сохраняем файл экселя как csv выбирая разделителем полей ";" ввиду печальной особенности русского экселя представлять десятичную точку как ","

директория в которую мы сохранили файл с данными будет нашей рабочей директорией (в линуксе достаточно стоя в ней запустить R в виндовсе возможно надо её отметить из меню оболочки), или надо указать полный путь к имени файла.

после это импортируем в эксель файл функцией read.csv2() и сразу смотрим все ли пошло нормально с помощью функции str()

Код
> str(read.csv2("кол-во-размер-рецидив.csv"))
'data.frame':    93 obs. of  13 variables:
$ номер           : int  43 91 3 4 10 34 35 39 42 93 ...
$ кол.во          : int  5 5 3 2 2 4 5 6 6 6 ...
$ средний.размер  : num  1.6 1.4 2.33 3 3 2.25 2 1.17 1.5 1.25 ...
$ мтс1            : num  1 0.5 1 1 1 1 0.5 1 1 0.5 ...
$ мтс2            : num  1 0.5 1 5 5 1 1 1 1 1 ...
$ мтс3            : num  1 1 5 0 0 2 1.5 1 1 1 ...
$ мтс4            : num  1 1 0 0 0 5 2 1 2 1 ...
$ мтс5            : num  4 4 0 0 0 0 5 1.5 2 4 ...
$ мтс6            : num  0 0 0 0 0 0 0 1.5 2 0 ...
$ суммарный.размер: num  8 7 7 6 6 9 10 7 9 7.5 ...
$ рецидив         : int  1 1 1 1 1 1 1 1 1 1 ...
$ срок            : int  1 1 1 3 3 3 3 3 3 3 ...
$ рецидив.до.года : int  1 1 1 1 1 1 1 1 1 1 ...
>


как видим всё в порядке и мы можем смело сохранять данные для последующей обработки

Код
> data <- read.csv2("кол-во-размер-рецидив.csv")
>


ЗЫ ну а посмотреть на первые несколько строчек что у нас в data можно с помощью функции head()

Код
> head(data)
  номер кол.во средний.размер мтс1 мтс2 мтс3 мтс4 мтс5 мтс6 суммарный.размер
1    43      5           1.60  1.0  1.0    1    1    4    0                8
2    91      5           1.40  0.5  0.5    1    1    4    0                7
3     3      3           2.33  1.0  1.0    5    0    0    0                7
4     4      2           3.00  1.0  5.0    0    0    0    0                6
5    10      2           3.00  1.0  5.0    0    0    0    0                6
6    34      4           2.25  1.0  1.0    2    5    0    0                9
  рецидив срок рецидив.до.года
1       1    1               1
2       1    1               1
3       1    1               1
4       1    3               1
5       1    3               1
6       1    3               1
p2004r
часть 2 Выбираем интервал группировки

Нас интересует как распределены размеры "мтс"

Код
> names(data)
[1] "номер"            "кол.во"           "средний.размер"   "мтс1"            
[5] "мтс2"             "мтс3"             "мтс4"             "мтс5"            
[9] "мтс6"             "суммарный.размер" "рецидив"          "срок"            
[13] "рецидив.до.года"



это переменные с 4 по 9, у них отсутствующие значения закодированы нолем (а надо NA)

выкусываем часть таблицы данных, заменяем 0 на NA:

Код
> # прицеливаемся :)
> head(data[,4:9])
  мтс1 мтс2 мтс3 мтс4 мтс5 мтс6
1  1.0  1.0    1    1    4    0
2  0.5  0.5    1    1    4    0
3  1.0  1.0    5    0    0    0
4  1.0  5.0    0    0    0    0
5  1.0  5.0    0    0    0    0
6  1.0  1.0    2    5    0    0
> mts<-as.vector(data[,4:9])
> # заменяем 0 на NA
> mts[mts==0]<-NA


и склеиваем в одну переменную:

1й способ
Код
c(mts[,1],mts[,2],mts[,3],mts[,4],mts[,5],mts[,6])


2й способ
Код
mts.new<-as.matrix(mts)
dim(mts.new)<-6*93
mts.new<-as.vector(mts.new)


Очистка от NA производится функцией na.omit()

Строим плотность распределения размера мтс

Код
> plot(density(na.omit(mts.new)))
>


Ну и голую гистограмму для сравнения

Код
> hist(na.omit(mts.new))
>


Теперь для способа с гистограммой надо выбрать интервалы группировки
p2004r

часть 3 Применяем интервал группировки

Допустим что мы выбрали группировку 0.5-1, 1-2, 2-3, 3-4, 4-5

функция hist( кроме картинки ) возвращает много нужных нам параметров: сколько куда попало и позволят задать произвольные интервалы группировки
Код
> str(hist(na.omit(mts.new), plot=FALSE))
List of 7
$ breaks     : num [1:10] 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
$ counts     : int [1:9] 147 40 78 12 36 2 25 9 24
$ intensities: num [1:9] 0.7882 0.2145 0.4182 0.0643 0.193 ...
$ density    : num [1:9] 0.7882 0.2145 0.4182 0.0643 0.193 ...
$ mids       : num [1:9] 0.75 1.25 1.75 2.25 2.75 3.25 3.75 4.25 4.75
$ xname      :8322456 "na.omit(mts.new)"
$ equidist   : logi TRUE
- attr(*, "class")=8322456 "histogram"
> hist(na.omit(mts.new), plot=FALSE)$breaks
[1] 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
> hist(na.omit(mts.new), plot=FALSE)$counts
[1] 147  40  78  12  36   2  25   9  24
>


таким образом если мы скажем

Код
> hist(na.omit(mts.new), plot=FALSE, breaks=c(0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0))$counts
[1] 147  40  78  12  36   2  25   9  24
>


мы получим разбиение na.omit(mts.new) по границам c(0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0). Поменяв разбиение на нужное нам мы получаем число попаданий в интересующие нас интервалы:

Код
> hist(na.omit(mts.new), plot=FALSE, breaks=c(0.5, 1.0, 2.0, 3.0, 4.0, 5.0))$counts
[1] 147 118  48  27  33


Осталось применить эту функцию подсчета попаданий в выбранные интервалы индивидуально к каждому случаю.
Код
вот например как последовательно трансформируются мтс данные первого случая

> mts[1,]
  мтс1 мтс2 мтс3 мтс4 мтс5 мтс6
1    1    1    1    1    4   NA
> as.matrix(mts[1,])
  мтс1 мтс2 мтс3 мтс4 мтс5 мтс6
1    1    1    1    1    4   NA
> as.vector(as.matrix(mts[1,]))
[1]  1  1  1  1  4 NA
> na.omit(as.vector(as.matrix(mts[1,])))
[1] 1 1 1 1 4
attr(,"na.action")
[1] 6
attr(,"class")
[1] "omit"
>


ну подсчет группировки для него

Код
> hist(as.vector(as.matrix(mts[1,])), plot=FALSE, breaks=c(0.5, 1.0, 2.0, 3.0, 4.0, 5.0))$counts
[1] 4 0 0 1 0
>


теперь применим данную операцию ко всем случаям, это проще потому что функция apply() применяет написанную нами функцию сразу к строке таблицы (или столбцу если написать apply(данные,2,функция)). t() поворачивает таблицу "набок", транспонирует.

Код
> result<-t(apply(mts,1,function (x) hist(x, plot=FALSE, breaks=c(0.5, 1.0, 2.0, 3.0, 4.0, 5.0))$counts))
> head(result)
     [,1] [,2] [,3] [,4] [,5]
[1,]    4    0    0    1    0
[2,]    4    0    0    1    0
[3,]    2    0    0    0    1
[4,]    1    0    0    0    1
[5,]    1    0    0    0    1
[6,]    2    1    0    0    1
> str(result)
int [1:93, 1:5] 4 4 2 1 1 2 2 4 3 4 ...


вот мы и получили трансформированные данные...
p2004r
Проведем разведочный анализ

лично я предпочитаю смотреть на трансформированные PCA данные, фактически на "голую ковариацию" smile.gif (соответствующие картинки присоединены)

Код
> result.pca<-prcomp(result, scale.=FALSE, center=FALSE)
> plot(result.pca)
> biplot(result.pca)
> biplot(result.pca,choices=3:2)


посмотрим какие у нас есть исходы

Код
> summary(as.factor(data[,11]))
0  1
3 90
> summary(as.factor(data[,12]))
1  3  6  9 12 15 18 21 24 27 30 36
3 12 18 18 16  7  5  4  4  2  3  1
> summary(as.factor(data[,13]))
0  1
27 66
> names(data[,11:13])
[1] "рецидив"         "срок"            "рецидив.до.года"
>


теперь отобразим в пространство PCA исходы

Код
> plot(result.pca$x[,1],
          result.pca$x[,2],
          bg=c("grey50", "white")[as.factor(data$рецидив)],
          pch=c(21,22)[as.factor(data$рецидив.до.года)],
          cex=c(1.8,1)[as.factor(data$рецидив.до.года)])
> plot(result.pca$x[,3],
          result.pca$x[,2],
          bg=c("grey50", "white")[as.factor(data$рецидив)],
          pch=c(21,22)[as.factor(data$рецидив.до.года)],
          cex=c(1.8,1)[as.factor(data$рецидив.до.года)])


1. очевидно что "рецидив" более менее равномерно расположился в "пространстве размеров мтс" (даже удивительно для всего 3х случаев). весь он попал в число "рецидив до года"

2. видно что фактор "рецидив до года " явно неравномерно распределен в "пространстве мтс"
p2004r
Построим полную модель различий

Код
> summary(glm(data$рецидив.до.года~ result, family=binomial))

Call:
glm(formula = data$рецидив.до.года ~ result, family = binomial)

Deviance Residuals:
    Min       1Q   Median       3Q      Max  
-3.0450  -0.4758   0.3491   0.6423   1.8174  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  -0.7664     1.1000  -0.697 0.485961    
result1       1.2934     0.3929   3.292 0.000994 ***
result2      -0.4517     0.3396  -1.330 0.183483    
result3       0.2313     0.4565   0.507 0.612424    
result4       0.1051     0.8383   0.125 0.900231    
result5       1.4076     0.8880   1.585 0.112934    
---
Signif. codes:  0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 112.05  on 92  degrees of freedom
Residual deviance:  79.59  on 87  degrees of freedom
AIC: 91.59

Number of Fisher Scoring iterations: 5

>


достоверно влияние первого диапазона размеров

сравним модели с разным числом параметров

Код
model.1 <- glm(data$рецидив.до.года~ result[,1], family=binomial)
model.15 <- glm(data$рецидив.до.года~ result[,c(1,5)], family=binomial)
model.125 <- glm(data$рецидив.до.года~ result[,c(1,2,5)], family=binomial)
model.full <- glm(data$рецидив.до.года~ result, family=binomial)

> anova(model.1,model.15,model.125,model.full)
Analysis of Deviance Table

Model 1: data$рецидив.до.года ~ result[, 1]
Model 2: data$рецидив.до.года ~ result[, c(1, 5)]
Model 3: data$рецидив.до.года ~ result[, c(1, 2, 5)]
Model 4: data$рецидив.до.года ~ result
  Resid. Df Resid. Dev Df Deviance
1        91     90.709            
2        90     83.080  1   7.6290
3        89     79.866  1   3.2139
4        87     79.590  2   0.2764


выберем лучшую для прогноза по минимуму AIC

Код
> AIC(model.1,model.15,model.125,model.full)
           df      AIC
model.1     2 94.70903
model.15    3 89.08005
model.125   4 87.86617
model.full  6 91.58975


и добьем кси квадратом

Код
> anova(model.1,model.15,model.125,model.full,test="Chi")
Analysis of Deviance Table

Model 1: data$рецидив.до.года ~ result[, 1]
Model 2: data$рецидив.до.года ~ result[, c(1, 5)]
Model 3: data$рецидив.до.года ~ result[, c(1, 2, 5)]
Model 4: data$рецидив.до.года ~ result
  Resid. Df Resid. Dev Df Deviance P(>|Chi|)  
1        91     90.709                        
2        90     83.080  1   7.6290  0.005744 **
3        89     79.866  1   3.2139  0.073016 .
4        87     79.590  2   0.2764  0.870918  
---
Signif. codes:  0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1



отобразим модель

Код
> summary(model.15)

Call:
glm(formula = data$рецидив.до.года ~ result[, c(1,
    5)], family = binomial)

Deviance Residuals:
    Min       1Q   Median       3Q      Max  
-2.8694  -0.7329   0.3294   0.7098   1.7005  

Coefficients:
                   Estimate Std. Error z value Pr(>|z|)    
(Intercept)         -1.1773     0.4975  -2.367 0.017954 *  
result[, c(1, 5)]1   1.2137     0.3245   3.741 0.000183 ***
result[, c(1, 5)]2   1.6365     0.6453   2.536 0.011214 *  
---
Signif. codes:  0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 112.05  on 92  degrees of freedom
Residual deviance:  83.08  on 90  degrees of freedom
AIC: 89.08

Number of Fisher Scoring iterations: 5
p2004r

Посмотрим что увидела оптимальная модель
Код
mosaicplot(table(result[,1],data$рецидив.до.года, result[,5]))


вертикальная ось показывает разбиение по признаку "рецидив до года"

горизонтальная ось показывает разбиение по числу мелких мтс

внутри каждое сочетание разбито по числу крупных мтс

суть модели более чем визуализирована smile.gif
p2004r
Поскольку у крупных опухолей всего два уровня (есть-нет) построим графическое представление лучшей модели прямо на графике (число малых опухолей vs рецидив)

сначала склеим таблицу данных с нормальными именами (что то predict.glm() обиделась на имена со спецсимволами)
Код
model.data<-data.frame("i1"=result[,1],"i5"=result[,5],"рецидив.до.года"=data$рецидив.до.года)
model <- glm(рецидив.до.года~ i1+i5, data=model,data, family=binomial)


нанесем на график линии предсказания модели

Код
plot(model.data$i1,
       model.data$рецидив.до.года)

lines(seq(0,5, length.out=40),
       predict(model,data.frame(i1=seq(0,5, length.out=40),
                                   i5=1),
                 type="response"))

lines(seq(0,5, length.out=40),
       predict(model,data.frame(i1=seq(0,5, length.out=40),
                                   i5=0),
                  type="response"),
       col="red")


PS ну и наоборот построим тоже smile.gif

Код
> plot(model.data$i5,model.data$рецидив.до.года)
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=0),type="response"))
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=1),type="response"))
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=2),type="response"))
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=3),type="response"))
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=4),type="response"))
> lines(seq(0,1, length.out=40), predict(model,data.frame(i5=seq(0,1, length.out=40), i1=5),type="response"))


тут очевидно чем больше тем хуже frown.gif

на формулировку http://forum.disser.ru/index.php?showtopic...ost&p=12211 ответ получен?

наверное можно пройти границами (в разумных пределах) по "сроку" и получить такие модели для других сроков?
p2004r
нет ли опечатки?

Код
> table(data$срок, data$рецидив.до.года)
    
      0  1
  1   0  3
  3   0 12
  6   1 17
  9   0 18
  12  0 16
  15  7  0
  18  5  0
  21  4  0
  24  4  0
  27  2  0
  30  3  0
  36  1  0


что то 6й уровень подозрительный?
DrgLena
Поскольку дискуссия с автором поста пока не получается и, даже диалога с p2004r нет, а данные выложены, можно предложить и другое решение задачи.
В анализе могут участвовать две переменные ? число МТС и величина максимального МТС, это моя клиническая гипотеза, что прежде всего величина максимального МТС будет играть роль, по аналогии с тем, что опухоли с большей проминенцией имеют худшие прогнозы.

Гипотеза 1 автора поста о влиянии числа МТС статистически не подтвердилась, если она относилась именно к числу МТС 2-3, как высказывал автор поста, а в качестве отклика брать число ранних рецидивов. Для рецидива до года для числа МТС более трех OR=1,8 (95% ДИ 0,7 ? 4,6). Даже если брать только 2 рецидива, против >2-х то тоже не будет статистически значимой сопряженности с ранними рецидивами. И в логистической регрессии, если использовать количество МТС как единственную количественную переменную, то коэффициент будет не значим.

А вторая гипотеза о влиянии размера МТС верна, но она должна быть сформулирована иначе. Тут можно сделать такой вывод, если размер одного из МТС 3 и более см , то это является фактором риска раннего рецидива (до года). OR=8,4 (95% ДИ 2,5- 27,6). И судя по представленным данным это вполне доказанный факт. В логистической регрессии в двумя переменными, число МТС (>3-х) также не значимый фактор, OR=1,9 (0,7÷5,4), а размер любого МТМ >3 см значимый фактор OR=8,6 (2,5 ÷-29,3) в модели прогнозирования ранних рецидивов.

Если сделать количественную переменную - величина максимального МТС и использовать ее и число МТС до операции, то логистическая модель с двумя такими предикторами будет статистически значима (Chi2( 2)=24,318 p=,00001) и оба коэффициента имеют значимую оценку. Для расчетной вероятности площадь ROC=0,78; для точки разделения >0,73 чувствительность составляет 70%, специфичность - 78%.
Чудес не бывает, чем больше размер МТС и их число, тем вероятнее рецидив. Можем посчитать и для конкретного больного, например ?25 максимальный размер МТС 2 см и их число 2, расчетная вероятность раннего рецидива составляет только 0,12, а для ?35 величина макс МТС 5 см и их число 5, вероятность рецидива 0,93.

Можно использовать и данные о времени наступления рецидива, для его оценки также по этим двум переменным ? число МТС и размер максимального.
По линейной модели для б-го ?25 ожидаемое время рецидива через 23,8 (20,5-27,1) мес. ( наблюдаемое время рецидива 24 мес), а для ?35 имеющего 5 мтс и макс размер 5 см время безрецидивного течения составит только 3,6 (1,4-5,8) мес. (наблюдаемое время рецидива 3 мес).

Влияние этих двух показателей на время без рецидивного течения можно показать и кокс регрессионной моделью. Для макс размера HR=2,0 (p=0,000000), для кол-ва МТС HR=1,32 (p=0,0016. Кривая К-М для средних ковариат, выглядит, как на рис., который позволяет визуально оценить вероятность без рецидивного течения. Подставив значения двух ковариат, можно получить кривые К-М для каждого больного.

И, наконец, можно представить доказательства первоначальной клинический идеи, если использовать для анализа время без рецидивного течения и проанализировать его при определенных условиях, а их два для двух переменных, т.е. 4 группы сравнения. 00 ? число МТС 2 или 3 и размер максимального МТС 2 или 3 см. Тогда, см. рисунок, для таких больных статистически значимо больше длительность безрецидивного течения, чем у больных с нарушением этих условий в сторону увеличения указанных границ по любому из двух признаков.
mamalita

Поскольку дискуссия с автором поста пока не получается и, даже диалога с p2004r нет, а данные выложены, можно предложить и другое решение задачи.

Приношу свои извинения за неучастие в дискуссии, т.к. пыталась разобраться с ответом р2004r. Сразу скажу не получилось. Преобразованные данные размеров по-моему все равно не могут участвовать в логит-регрссии.

В анализе могут участвовать две переменные ? число МТС и величина максимального МТС, это моя клиническая гипотеза, что прежде всего величина максимального МТС будет играть роль, по аналогии с тем, что опухоли с большей проминенцией имеют худшие прогнозы.

Гипотеза 1 автора поста о влиянии числа МТС статистически не подтвердилась, если она относилась именно к числу МТС 2-3, как высказывал автор поста, а в качестве отклика брать число ранних рецидивов. Для рецидива до года для числа МТС более трех OR=1,8 (95% ДИ 0,7 ? 4,6). Даже если брать только 2 рецидива, против >2-х то тоже не будет статистически значимой сопряженности с ранними рецидивами. И в логистической регрессии, если использовать количество МТС как единственную количественную переменную, то коэффициент будет не значим.

На мой взгляд гипотеза не подтверждается потому что должно быть именно сочетание 2-3 очага размером 2-3см. Мне Ваша мысль понятна, особенно заманчив вариант с 4 группами сравнения, но наличие МТС числом 5 по 1 см тоже является группой риска, 3 метастаза размеры которых 1;1;3 тоже будет входить в группу риска. Вот в чем у меня проблема. Но сделать 1 группу нам наиболее подходящих 2-3 очага размером 2-3 см и 2 группа - все остальные будет несколько вызывающе (или нет).

А вторая гипотеза о влиянии размера МТС верна, но она должна быть сформулирована иначе. Тут можно сделать такой вывод, если размер одного из МТС 3 и более см , то это является фактором риска раннего рецидива (до года). OR=8,4 (95% ДИ 2,5- 27,6). И судя по представленным данным это вполне доказанный факт. В логистической регрессии в двумя переменными, число МТС (>3-х) также не значимый фактор, OR=1,9 (0,7÷5,4), а размер любого МТМ >3 см значимый фактор OR=8,6 (2,5 ÷-29,3) в модели прогнозирования ранних рецидивов.

Если сделать количественную переменную - величина максимального МТС и использовать ее и число МТС до операции, то логистическая модель с двумя такими предикторами будет статистически значима (Chi2( 2)=24,318 p=,00001) и оба коэффициента имеют значимую оценку. Для расчетной вероятности площадь ROC=0,78; для точки разделения >0,73 чувствительность составляет 70%, специфичность - 78%.
Чудес не бывает, чем больше размер МТС и их число, тем вероятнее рецидив. Можем посчитать и для конкретного больного, например ?25 максимальный размер МТС 2 см и их число 2, расчетная вероятность раннего рецидива составляет только 0,12, а для ?35 величина макс МТС 5 см и их число 5, вероятность рецидива 0,93.

Можно использовать и данные о времени наступления рецидива, для его оценки также по этим двум переменным ? число МТС и размер максимального.
По линейной модели для б-го ?25 ожидаемое время рецидива через 23,8 (20,5-27,1) мес. ( наблюдаемое время рецидива 24 мес), а для ?35 имеющего 5 мтс и макс размер 5 см время безрецидивного течения составит только 3,6 (1,4-5,8) мес. (наблюдаемое время рецидива 3 мес).

Как это рассчитать? На основании кокс регрессионной модели. Если да то формула такая: h0(t)*exp(b1 z1+...+bm zm), тогда вопрос как найти h0. Спасибо.


mamalita

Спасибо за быстрый подробный ответ и помощь. Ноя как мартышка с очками не пойму как применить, как мартышка с очками. По выводам я поняла что чаще всего возникают мтс при крупных очагах, но по поводу новых переменных - их опять 5 штук, как их включать в логит регрессию?
DrgLena
Нет, вы поняли не правильно.

Хотя я много чего наворотила, начните вникать с простых вещей, которые вам понятны. OR можно руками посчитать, а кокс регрессию оставьте на закуску, хотя на форуме она уже обсуждалась и ответ на ваш вопрос есть.

Я использую для расчета времени наступления рецидива в линейной модели и в кокс регрессионной две переменные - размер максамального (нужно сделать эту переменную) и число МТС. Имея модель можно ответить на любой вопрос по сочетанию этих признаков, если конечно анализ модели вас устроит. Все результаты, которые я привожу получены по вашим данным. Поскольку у вас три переменных отклика, то и предлагаемые методы различны.

В рамках форума вы получаетет только направление, одно из них предлагал Игорь, логистическую регрессию, только в качествер размера я взяла максимальный для каждого больного, а количество МТСу вас есть. Я тоже не все поняла у р2004r, но какие то полезные вещи по работе с R я уже разобрала.
p2004r
Цитата(mamalita @ 16.11.2011 - 07:58) *
Спасибо за быстрый подробный ответ и помощь. Ноя как мартышка с очками не пойму как применить, как мартышка с очками.


Эпиграф: " -- Доктор меня все игнорируют. -- Следующий!"



мда smile.gif для того что бы понять надо задавать содержательные вопросы, хотя бы --- "ткнем пальцем сюда, что это?" Для удобства я специально разбил весь ответ на мелкие части, давайте идти от части к части. Я постараюсь отвечать на вопросы.

PS Дело в том что мне например так и не понятно правильно ли Вами агрегирована переменная "до года". Или там ошибка, или смысл переменной не тот о котором я смог догадаться.

PPS Переменная "срок" однозначно зависит только от маленьких и больших мтс (на это намекает даже плотность распределения размеров мтс). Зависимость явно количественная (могу соответствующий бублеплот предъявить).

Маленькие мтс это от 0.5 -- 1

Большие мтс это (после проведенного выше анализа пробного разбиения) 3.5 -- 5

В терминах вероятность логистическая регрессия может ответить о любом граничном сроке достижим он или нет при данном сочетании "число маленьких --- число больших". Ну и как влияет сочетание большие -- маленькие мтс в целом.
DrgLena
Цитата(p2004r @ 16.11.2011 - 12:24) *
PPS Переменная "срок" однозначно зависит только от маленьких и больших мтс (на это намекает даже плотность распределения размеров мтс). Зависимость явно количественная (могу соответствующий бублеплот предъявить).

Маленькие мтс это от 0.5 -- 1

Ну нет больных с такими размерами МТС, они у вас существуют только в воображении, вернее в теоретическом распределении, а потому не могут влиять на срок наступления МТС. Есть один больной с макс размером 1,5, что по вашей группировке не является маленьким МТС. У всех остальных МТС 2 и более.
DrgLena
Цитата(p2004r @ 16.11.2011 - 11:24) *
PS Дело в том что мне например так и не понятно правильно ли Вами агрегирована переменная "до года". Или там ошибка, или смысл переменной не тот о котором я смог догадаться.

Смысл переменной вы, действительно, не поняли. Есть время наступления новых МТС после вмешательства, срок в месяцах, и если этот срок до года,то в бинарной переменной стоит соответствующая метка "1". Так, что ошибки нет, у б-го МТС через 3 мес, а потому "1"
p2004r
Цитата(DrgLena @ 16.11.2011 - 12:29) *
Ну нет больных с такими размерами МТС, они у вас существуют только в воображении, вернее в теоретическом распределении, а потому не могут влиять на срок наступления МТС. Есть один больной с макс размером 1,5, что по вашей группировке не является маленьким МТС. У всех остальных МТС 2 и более.


что значит "нет размера"?!

в таблице данных есть список показателей мтс1 мтс2 мтс3 мтс4 мтс5 мтс6

Код
> head(data[,4:9])
  мтс1 мтс2 мтс3 мтс4 мтс5 мтс6
1  1.0  1.0    1    1    4    0
2  0.5  0.5    1    1    4    0
3  1.0  1.0    5    0    0    0
4  1.0  5.0    0    0    0    0
5  1.0  5.0    0    0    0    0
6  1.0  1.0    2    5    0    0


Как я понимаю в них лежат размеры отдельных мтс каждого рассматриваемого случая, размеры колеблются от 0.5 до 5. "0" почему то выбран как признак отсутствия.

Я что то не так понял?

Топикстартер жалуется на проблему "как засунуть в регрессию переменное число показателей". По моему мнению мой способ работает.
DrgLena
Больной, имеющий 0,5 имеет и 4 (вторая строчка)
p2004r
Цитата(DrgLena @ 16.11.2011 - 12:37) *
Смысл переменной вы, действительно, не поняли. Есть время наступления новых МТС после вмешательства, срок в месяцах, и если этот срок до года,то в бинарной переменной стоит соответствующая метка "1". Так, что ошибки нет, у б-го МТС через 3 мес, а потому "1"


у 6го _уровня_

группируя обе переменных "срок" и "рецидив.до.года" мы видим что "срок" имеет уровни 1 3 6 9 12 15 18 21 24 27 30 36

а "рецидив.до.года" только 0 и 1

но на уровне 6 переменной "срок" мы видим один случай с уровнем 0 переменной "рецидив.до.года"

мне кажется это странным.
p2004r
Цитата(DrgLena @ 16.11.2011 - 13:12) *
Больной, имеющий 0,5 имеет и 4 (вторая строчка)


да, конечно. Этот список переменных "мтс" (а именно "0.5 0.5 1 1 4 0") у него заменен на "4 0 0 1 0" соответствующим интервалам группировки 0.5-1, 1-2, 2-3, 3-4, 4-5.

именно это та трансформация данных которая позволяет перейти к фиксированному числу переменных.
mamalita
Цитата(p2004r @ 16.11.2011 - 15:20) *
да, конечно. Этот список переменных "мтс" (а именно "0.5 0.5 1 1 4 0") у него заменен на "4 0 0 1 0" соответствующим интервалам группировки 0.5-1, 1-2, 2-3, 3-4, 4-5.

именно это та трансформация данных которая позволяет перейти к фиксированному числу переменных.

- Как позволяет? Я бы задала конкретные вопросы, но мне нужно время, чтобы вникнуть и сформулировать их, а пока я смутно представляю как новые данные отражают мои данные. Хотя интуитивно чувствую что это наиболее правильный подход. По поводу переменных исходов: - все правильно: рецидив(есть нет) и срок рецидива(в месяцах), просто 6 строка попали цензуированные данные, рецидива не было а пациент выпал из виду, поэтому в столбце рецидивы до года на 6 месяцах 0. Честно говоря, я думала делать так: включать все размеры метастазов в предикторы, просто там где их нет (т.е. 3 метастаза а логит регрессия на 6 переменных) будет 0 и если потом считать для каждого конкретного случая подставлять в формулу 0 и определять вероятность того или иного исхода. Но это видимо совсем не правильно.

p2004r
да правильно, просто включать нельзя по тому что порядок перечисления "мтс?" случаен и никакой (ко)вариации при такой записи в данных не сохраняется...

я подписался на данную тему по емайл, поэтому думайте, я не пропущу Ваш вопрос

PS Про выпавшего пациента понятно. Жалко что я сам не догадался frown.gif. Всё же лучше в таких случаях ставить NA (или другое обозначение пропущенного - отсутствующего значения).
DrgLena
Цитата(p2004r @ 16.11.2011 - 15:04) *
Топикстартер жалуется на проблему "как засунуть в регрессию переменное число показателей". По моему мнению мой способ работает.

Важно ведь не как засунуть, а что будет на выходе.
Покажите, пожалуйста как работает ваш способ, например, на тех же больных, которых привела я под номером 25 и 35. Покажите, 1) чему равна вероятность рецидива до года, 2) приведите рассчетное время рецидивирования в мес. А потом перейдем к кокс регрессии.
p2004r
Цитата(DrgLena @ 16.11.2011 - 18:22) *
Важно ведь не как засунуть, а что будет на выходе.
Покажите, пожалуйста как работает ваш способ, например, на тех же больных, которых привела я под номером 25 и 35. Покажите, 1) чему равна вероятность рецидива до года, 2) приведите рассчетное время рецидивирования в мес. А потом перейдем к кокс регрессии.


Сначала хотелось бы заметить что точность подгонки модели для данных участвовавших в оной крайне подозрительный показатель. Модель выбрана мной по критерию AIC а не минимуму вариации не объясняемой моделью. Только такая модель имеет прогностическую силу.

Как Вы наверное заметили у меня посчитана модель варианта 1

для первоначального разбиения на интервалы группировки результат вот такой

Код
> data.frame(predict(model, type="response"),data$рецидив.до.года)
   predict.model..type....response.. data.рецидив.до.года
1                          0.9753424                    1
2                          0.9753424                    1
3                          0.9471832                    1
4                          0.8419639                    1
5                          0.8419639                    1
6                          0.9471832                    1
7                          0.9471832                    1
8                          0.9753424                    1
9                          0.9215760                    1
10                         0.9753424                    1
11                         0.9837041                    1
12                         0.9837041                    1
13                         0.9471832                    1
14                         0.7773354                    1
15                         0.9753424                    1
16                         0.8419639                    1
17                         0.9471832                    1
18                         0.8419639                    1
19                         0.8419639                    1
20                         0.7773354                    1
21                         0.9215760                    1
22                         0.7773354                    1
23                         0.7773354                    1
24                         0.9837041                    0
25                         0.5091129                    1
26                         0.9753424                    1
27                         0.8419639                    1
28                         0.7773354                    1
29                         0.5091129                    1
30                         0.9837041                    1
31                         0.9215760                    1
32                         0.9837041                    1
33                         0.2355390                    1
34                         0.5091129                    1
35                         0.8419639                    1
36                         0.5091129                    1
37                         0.5091129                    1
38                         0.5091129                    1
39                         0.7773354                    1
40                         0.9837041                    1
41                         0.9753424                    1
42                         0.8419639                    1
43                         0.8419639                    1
44                         0.8419639                    1
45                         0.9471832                    1
46                         0.7773354                    1
47                         0.9471832                    1
48                         0.9471832                    1
49                         0.9471832                    1
50                         0.7773354                    1
51                         0.7773354                    1
52                         0.8419639                    1
53                         0.8419639                    1
54                         0.8419639                    1
55                         0.8419639                    1
56                         0.5091129                    1
57                         0.7773354                    1
58                         0.9471832                    1
59                         0.7773354                    1
60                         0.5091129                    1
61                         0.5091129                    1
62                         0.5091129                    1
63                         0.5091129                    1
64                         0.5091129                    1
65                         0.7773354                    1
66                         0.5091129                    1
67                         0.7773354                    1
68                         0.6128158                    0
69                         0.6128158                    0
70                         0.5091129                    0
71                         0.7773354                    0
72                         0.7773354                    0
73                         0.7773354                    0
74                         0.9215760                    0
75                         0.6128158                    0
76                         0.7773354                    0
77                         0.7773354                    0
78                         0.7773354                    0
79                         0.5091129                    0
80                         0.2355390                    0
81                         0.2355390                    0
82                         0.5091129                    0
83                         0.5091129                    0
84                         0.2355390                    0
85                         0.2355390                    0
86                         0.2355390                    0
87                         0.2355390                    0
88                         0.2355390                    0
89                         0.2355390                    0
90                         0.2355390                    0
91                         0.2355390                    0
92                         0.2355390                    0
93                         0.2355390                    0


PS вот как связана переменная "срок" с предсказанной вероятностью рецидива (присоединяю еще один рисунок)
DrgLena
Спасибо, я тоже посчитала вероятности по вашим коэффициентам, тем, что я привожу ниже, и хочу сравнить по площади ROC вашу и свою модель, где я использовала число и размер макс МТС
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.7664 1.1000 -0.697 0.485961
result1 1.2934 0.3929 3.292 0.000994 ***
result2 -0.4517 0.3396 -1.330 0.183483
result3 0.2313 0.4565 0.507 0.612424
result4 0.1051 0.8383 0.125 0.900231
result5 1.4076 0.8880 1.585 0.112934

Не могу перевести в табличную форму приведенные вами вероятности.
p2004r
Цитата(DrgLena @ 16.11.2011 - 19:55) *
Спасибо, я тоже посчитала вероятности по вашим коэффициентам, тем, что я привожу ниже, и хочу сравнить по площади ROC вашу и свою модель, где я использовала число и размер макс МТС
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.7664 1.1000 -0.697 0.485961
result1 1.2934 0.3929 3.292 0.000994 ***
result2 -0.4517 0.3396 -1.330 0.183483
result3 0.2313 0.4565 0.507 0.612424
result4 0.1051 0.8383 0.125 0.900231
result5 1.4076 0.8880 1.585 0.112934


если удалить result[2-4] то result5 скорее всего станет достоверным, последующее добавление result2 значимо модель не улучшает, да и AIC минимален на модели из result1 и result2.

PS а параметр максимальный размер, хороший показатель и он явно добавляет информации в мою модель

PPS как вариант я скорее всего смогу учесть максимальный размер перейдя с расчета hist() на density()

PPPS Присоединяю файл с вероятностями
p2004r
Цитата(DrgLena @ 16.11.2011 - 19:55) *
Не могу перевести в табличную форму приведенные вами вероятности.


Вот файл.
DrgLena
Спасибо, я уже перевела и скопировала ваши вероятности. Для посчитанных мною по вашим коэффициентам, приведенным выше, значение площади ROC максимально=0,85, по приведенным вами вероятностям, чуть ниже 0,83. А по моей модели учитывающей только число и макс размер 0,79. Статистически площади на различаются. Т.о. вы своим подходом используете несколько больше информации заложенной в данных. Вот только как получить используемую вами трансформацию данных, хотелось бы посмотреть ссылки на литературу.
p2004r
Цитата(DrgLena @ 16.11.2011 - 20:40) *
Спасибо, я уже перевела и скопировала ваши вероятности. Для посчитанных мною по вашим коэффициентам, приведенным выше, значение площади ROC максимально=0,85, по приведенным вами вероятностям, чуть ниже 0,83. А по моей модели учитывающей только число и макс размер 0,79. Статистически площади на различаются. Т.о. вы своим подходом используете несколько больше информации заложенной в данных. Вот только как получить используемую вами трансформацию данных, хотелось бы посмотреть ссылки на литературу.


Это фактически просто гистограмма, я даже как то затрудняюсь так сразу вспомнить кто первый предложил интервальный вариационный ряд (наверное это больше исторический вопрос smile.gif.

Применить интервальный вариационный ряд для каждого из многомерных случаев в выборке с целью избавится от переменного числа дескрипторов придумал лично, никуда не заглядывая. (параллельно правда думал над конкурсом яндекса, там похожая проблема всплывает).
DrgLena
Спасибо, р2004r, я поняла, для меня это новая мысль, есть стимул продолжить продвигаться в R !!!
DrgLena
Что то, все же, настораживает в этом подходе. Как трактовать отрицательное значение коэффициента при второй категории размера. И отношение шансов и стандартизированное отношение шансов для второй категории меньше единицы. Т.е. чем больше таких размеров, тем меньше вероятность рецидива, т.е лучше для прогноза? Должна же быть клиническая логика любого моделирования.
p2004r
Цитата(DrgLena @ 17.11.2011 - 18:46) *
Что то, все же, настораживает в этом подходе. Как трактовать отрицательное значение коэффициента при второй категории размера. И отношение шансов и стандартизированное отношение шансов для второй категории меньше единицы. Т.е. чем больше таких размеров, тем меньше вероятность рецидива, т.е лучше для прогноза? Должна же быть клиническая логика любого моделирования.


Трактуется только оптимальная модель. В её составе интерцепт, число самых малых и число самых больших.

В целом влияние число опухолей различных размеров интерпретировать можно на вот таком бублеплоте.

вот его основа, пространство принципиальных компонент без извлечения средних и шкалирования. фактически те же данные только повернута система координат.
Код
> result.pca<-prcomp(result, scale.=FALSE, center=FALSE)
> plot(result.pca)
> biplot(result.pca)
> biplot(result.pca, choices=3:2)


крутить 3д график в форуме неудобно ограничимся серией бублеплотов (для сокращения размеров кода объявим функцию)

размер кружков это "срок", их заливка признак нулевого числа в интервале группировки номер которого написан в заглавии картинки

Код
> plot.res.n <- function (res.n) {
+   plot(result.pca$x[,3],
+        result.pca$x[,2],
+        bg=c("grey50","white")[as.factor(result[,res.n]==0)],
+        pch=21,
+        cex=seq(1,3, length.out=12)[as.factor(data$срок)], main=res.n)}
> plot.res.n(1)
> plot.res.n(2)
> plot.res.n(3)
> plot.res.n(4)
> plot.res.n(5)


с градиентом размеров кружком совпадают 1,5 и 4й интервал группировки размеров опухоли. Причем 5 работает и в направлении суммарного размера опухоли (первая компонента судя по всему его пытается восстановить).

2й интервал группировки работает против градиента "срок". 3й я бы сказал ортогонален градиенту "срок".

Как то так.
p2004r
Цитата(DrgLena @ 17.11.2011 - 18:46) *
Что то, все же, настораживает в этом подходе. Как трактовать отрицательное значение коэффициента при второй категории размера. И отношение шансов и стандартизированное отношение шансов для второй категории меньше единицы. Т.е. чем больше таких размеров, тем меньше вероятность рецидива, т.е лучше для прогноза? Должна же быть клиническая логика любого моделирования.


собственно вот это неплохо иллюстрирует "отрицательность"

Код
> mosaicplot(table(result[,2],data$срок))
> mosaicplot(table(result[,1],data$срок))

p2004r
Цитата(DrgLena @ 17.11.2011 - 18:46) *
Должна же быть клиническая логика любого моделирования.


1. Я бы не переносил так просто коэффициенты модели на причинно следственные связи.

2. Мы наблюдаем агрегированные данные. На самом деле все эти мтс возникали не одновременно. Я бы предположил что есть различные варианты (или/и стадии) развития процесса.
DrgLena
Да, но ведь анализ данных для того и делается, чтобы в данном случае ответить на очень важный вопрос, при каких исходных данный оправдано оперативное лечение МТС, а когда оно приносит только лишние страдания больному. Очевидно год без рецидивного течения для таких больных ? это успешный исход. Что есть у врача ? число и размеры. В вашей модели величина МТС в 1 и 1,5 см находятся в разных категориях и имеют противоположное влияние на исход, хотя точность измерения и округления не могут провести тут точную границу. Ни один клиницист с этим не согласится. Для данного примера результат работы с агрегированными данными, на мой взгляд, не привел к ответу на вопрос о влиянии числа и размера, но продемонстрирована техника исполнения.
p2004r
Цитата(DrgLena @ 18.11.2011 - 00:58) *
Да, но ведь анализ данных для того и делается, чтобы в данном случае ответить на очень важный вопрос, при каких исходных данный оправдано оперативное лечение МТС, а когда оно приносит только лишние страдания больному. Очевидно год без рецидивного течения для таких больных ? это успешный исход. Что есть у врача ? число и размеры. В вашей модели величина МТС в 1 и 1,5 см находятся в разных категориях и имеют противоположное влияние на исход, хотя точность измерения и округления не могут провести тут точную границу. Ни один клиницист с этим не согласится. Для данного примера результат работы с агрегированными данными, на мой взгляд, не привел к ответу на вопрос о влиянии числа и размера, но продемонстрирована техника исполнения.



1. я напомню об одной фразе из своих сообщений "Допустим что мы выбрали группировку 0.5-1, 1-2, 2-3, 3-4, 4-5".

2. кроме того я _настойчиво_ (не менее трех раз smile.gif ) упоминаю об использовании вместо hist() функции density(,n = ...) которая возвращает

Код
x: the ?n? coordinates of the points where the density is
          estimated.

       y: the estimated density values.  These will be non-negative,
          but can be zero.

      bw: the bandwidth used.

       n: the sample size after elimination of missing values.


собственно использовать y*n по x мне видится предпочтительной техникой агрегации данных для выбора интервалов группировки.

Делать полное исследование? smile.gif Все же думаю надо дождаться Автора эксперимента :-|
DrgLena
p2004r, вы продемонстрировали, что моделирование - это искусство. У Автора есть первичная клиническая гипотеза, и есть достаточно средств, чтобы выбрать лучшее статистическое доказательство.
mamalita
Медленно но верно тем самым и занимаюсь. Мне нужно вникнуть в суть самого метода, а на это времени катастрофически не хватает. А по поводу клинической гипотезы скажу. Что лучше всего новому методу лечения как раз должны поддаваться МТС размером 2-3см, конечно округление до 0,5 условно, можно наверное разделить и по 1 см. МТС размером больше 3,5 см часто не могут подвергнуться полному удалению и тогда высок риск рецидива, а слишком маленькие могут быть не удалены из-за плохой визуализации.
mamalita
Начала с самого начала и сразу проблема: при открытии рабочего пространства выдает "ошибка: неправильное магическое число файла (файл может быть поврежден) данные не загружены Вдобавок: предупреждение файл "имя" имеет магическое число 'непонятные знаки' использование сохраненных версий более ранних чем 2 не одобряется" - чтобы это могло значить? Может быть то же самое можно сделать в другой кнопочной программе (есть SPSS, statistica6, attestat). Спасибо.
p2004r
Цитата(mamalita @ 5.12.2011 - 12:47) *
Начала с самого начала и сразу проблема: при открытии рабочего пространства выдает "ошибка: неправильное магическое число файла (файл может быть поврежден) данные не загружены Вдобавок: предупреждение файл "имя" имеет магическое число 'непонятные знаки' использование сохраненных версий более ранних чем 2 не одобряется" - чтобы это могло значить? Может быть то же самое можно сделать в другой кнопочной программе (есть SPSS, statistica6, attestat). Спасибо.


вот csv файл с Вашими данными, далее запускаете R и в окне команд просто вставляете мои команды из комментариев...

файл распаковать в рабочую папку R и вот такая команда загружает его под именем data

Цитата
data <- read.csv2("кол-во-размер-рецидив.csv")


её прямо печатаете (или копируете контрл-c контрл-v) в окне R (меню лучше пока не трогать все что там есть не относится к собственно вычислениям в среде).


Можно прямо продвигаться (копируя команды) начиная с сообщения http://forum.disser.ru/index.php?showtopic...ost&p=12224

особенно полезно прочитать и немного поделать примеры из перевода руководства http://m7876.wiki.zoho.com/Introduction-to-R.html

PS повторить трансформацию данных в другой программе работающей по "кнопочному" принципу будет довольно затруднительно и трудоемко.
mamalita
Все делаю как написано программа отвечает : не могу открыть соединение, не могу открыть файл, сохраняю его в расширении CSV(разделитель запятые)?
Теперь по теории. Понимаю что мне нужно что-то почитать желательно с примерами, может дадите ссылку. Потому что до момента разбиения на интервалы и определения количества попадания в эти интервалы МТС я поняла а дальше туман. Например новые данные для 1 случая 40010 это значит 4 попали в первый интервал, 1 в четвертый?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.