Для большинства целей в R эквивалент proc glm
равен lm
, что подходит для линейных моделей.Похоже, вы хотите получить оценочные коэффициенты из моделей, которые можно получить с помощью coef(mod)
, где mod
- это объект, возвращаемый lm
.
. Самый сложный бит - это репликация *Оператор 1008 *, который подходит для отдельных моделей для каждого уровня переменной by
(в данном случае HID
).Попробуйте что-то вроде этого.Я предполагаю, что вы уже импортировали ваш набор данных в R.
grps <- split(DataTX, DataTX$HID)
mods <- lapply(grps, function(x) lm(Bwt ~ DAG, data=x))
sapply(mods, coef)
Это разбивает DataTX
на отдельные группы на основе HID
.Затем для каждой группы подходит модель lm(Bwt ~ DAG)
.Затем в последней строке извлекаются подогнанные коэффициенты для каждой модели.
Это можно объединить в одну строку, но, оставив ее в виде 3 отдельных операторов, вероятно, будет легче следовать.коэффициенты не будут такими же, как у SAS, из-за различий в параметрах двух систем в модели.В частности, SAS по умолчанию обрабатывает последний уровень переменной класса / фактора как ссылку, а R использует первый.