2016-08-03 3 views
1

Я новичок в RКак рассчитать коэффициент и коэффициент риска в R

Данные, которые я прикрепляю как лист google. Его небольшая часть данных. данные имеют 12274 строк и 107 столбцов

нажмите на ссылку ниже для данных https://docs.google.com/spreadsheets/d/1kpWtAxj7XTNaXowMjBsZ5lWm6LlbdE2nzH6s6Pll1Y8/edit?usp=sharing

Я хочу, чтобы рассчитать шансы рациона и соотношение риска с PH и все другими переменными, по одному. пытался использовать это:

tab <- table(mydata[[i]],mydata[[j]]) 
OddsRatio <- epitab(tab,method = "oddsratio") 

Но это не помогает. Просьба предложить решение
Спасибо заранее

+0

так, на основе биномиального случае, OR = \ гидроразрыва {\ гидроразрыва {p_1} {1-p_1}} {\ гидроразрыва {p_2} {1-p_2}}. Вам нужно будет вычислить, что для всех ваших данных? Как вы оцениваете свои вероятности? – FisherDisinformation

+0

В чем смысл «это не помогает». Поскольку «эпитаб» нуждается в таблице, нужны факторы таблицы! Но ваши данные, похоже, продолжают переменные. Сначала дискретизируйте свои переменные (создайте факторы) на вкладках. – Robert

+0

@Robert Вы имели в виду преобразовать данные в категории ..? Я использовал это также в некоторый момент времени tab <- table (cut (mydata [[i]], pretty (mydata [[i]])), mydata [[j]]) – user2360884

ответ

0

Не уверен, что это именно то, что вы хотите, но vcd::oddsratio это хорошее место, чтобы начать!

# load libraries 
library(gsheet) 
library(vcd) 
# load data 
df <- gsheet2tbl('docs.google.com/spreadsheets/d/1kpWtAxj7XTNaXowMjBsZ5lWm6LlbdE2nzH6s6Pll1Y8') 
# remove NAs 
df <- df[,-3] 
df <- df[-8,] 
# convert to matrix 
mat <- data.matrix(df, rownames.force = NA) 
# calculate odds ratio 
oddsratio(mat, log = FALSE) 
+0

Спасибо за ваше время , Но, поскольку данные огромны, мне нужен общий метод для удаления NA. И отношение шансов должно быть рассчитано для двух переменных за один раз Для оценки ex-pH-pap, pH-weight small, pH-weight large и т. Д. – user2360884

+0

Если вы хотите найти строки без пропущенных значений, вы можете попробовать ' complete.cases (DF) '. Это дает вам логический вектор. Если вы хотите подмножество данных, сохраняя только полные случаи, вы можете попробовать 'df [complete.cases (df),]'. Это также можно выполнить, выполнив этот 'na.omit (df)'. – HNSKD

Смежные вопросы