Оператор $ недопустим для атомарных векторов в HH R

Я пытаюсь построить этот график. Использование этого пакета

Следующее находится в файле данных
RAND, PREF, SEA, SN.

Cummulative,Q1,68,1238
Current,Q1,67,1243
Cummulative,Q2,70,1238
Current,Q2,69,1243
Cummulative,Q3,75,1238
Current,Q3,75,1243
Cummulative,Q4,78,1238
Current,Q4,81,1243
Cummulative,Q5,71,1238
Current,Q5,68,1243
Cummulative,Q6,77,1238
Current,Q6,76,1243
Cummulative,Q7,78,1238
Current,Q7,80,1243
Cummulative,Q8,78,1238
Current,Q8,81,1243
Cummulative,Q9,69,1238
Current,Q9,68,1243
Cummulative,Q10,69,1238
Current,Q10,68,1243
Cummulative,Q11,73,1238
Current,Q11,74,1243
Cummulative,Q12,77,1238
Current,Q12,79,1243
Cummulative,Q13,74,1238
Current,Q13,73,1243
Cummulative,Q14,76,1238
Current,Q14,75,1243
Cummulative,Q15,71,1238
Current,Q15,72,1243
Cummulative,Q16,63,1238
Current,Q16,67,1243
Cummulative,Q17,71,1238
Current,Q17,70,1243

код:

eqdata <- read.table(datafile , header = T,sep=",")
#eqdata <- as.data.frame(eqdata)
eqdata1 <- hh(eqdata)

aed <- logrelrisk(eqdata1)

p <- ae.dotplot(aed, A.name="TREATMENT A (N=216)",B.name="TREATMENT B (N=431)")

Вывод: ошибка в ae $ SAE: оператор $ недопустим для атомарных векторов Вызов: logrelrisk

любая помощь очень ценится.


person henna    schedule 12.04.2012    source источник
comment
Теперь работает!!! Проблема была в МОРЕ. Фактически это SAE. узнал, когда увидел определение функции. Теперь все хорошо.   -  person henna    schedule 12.04.2012
comment
Вам также пришлось удалить eqdata1 <- hh(eqdata), как предложено ниже? Если это так, было бы важно указать это (например, приняв ответ), чтобы другие люди с аналогичной проблемой, которые нашли этот пост, знали все, что им нужно исправить.   -  person BenBarnes    schedule 12.04.2012


Ответы (1)


Вырежьте линию eqdata1 <- hh(eqdata). Из документации ?hh эта функция просто возвращает путь к указанному файлу и, следовательно, не является data.frame, как того требует logrelrisk().

eqdata <- read.table(datafile , header = T,sep=",")
#eqdata <- as.data.frame(eqdata)
# eqdata1 <- hh(eqdata)

aed <- logrelrisk(eqdata)

p <- ae.dotplot(aed, A.name="TREATMENT A (N=216)",B.name="TREATMENT B (N=431)")
person BenBarnes    schedule 12.04.2012
comment
то выдает следующую ошибку Ошибка в _1 _ (_ 2_, PCT, value = numeric (0)): у замены есть 0 строк, у данных 34 Вызовы: logrelrisk - ›$‹ - - ›$‹ -. data.frame Я действительно застрял пожалуйста помоги :( - person henna; 12.04.2012
comment
Ааа ... Теперь я вижу, что одно из названий ваших столбцов неверно. SEA должно быть SAE. Это делает это? (строчку hh еще нужно вынуть) - person BenBarnes; 12.04.2012