Мне нужно выполнить нелинейную множественную регрессию с данными, которые выглядят следующим образом:
ID Customer Country Industry Machine-type Service hours**
1 A China mass A1 120
2 B Europe customized A2 400
3 C US mass A1 60
4 D Rus mass A3 250
5 A China mass A2 480
6 B Europe customized A1 300
7 C US mass A4 250
8 D Rus customized A2 260
9 A China Customized A2 310
10 B Europe mass A1 110
11 C US Customized A4 40
12 D Rus customized A2 80
Зависимая переменная: часы работы. Независимые переменные: клиент, страна, отрасль, тип машины.
Я применил линейную регрессию, но поскольку предположение о линейности не выполняется, я должен выполнить нелинейную регрессию.
Я знаю, что нелинейную регрессию можно выполнить с помощью функции nls. Как мне добавить категориальные переменные к нелинейной регрессии, чтобы получить статистическую сводку в R?
Имена столбцов после добавления макетов: таблица с макетами
ID Customer.a Customer.b Customer.c Customer.d Country.China Country.Europe Country.Rus Country.US Industry.customized industry.Customized Industry.mass Machine type.A1 Machine type.A2 Machine type.A3 Service hours
1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 120
2 0 1 0 0 0 1 0 0 1 0 0 0 1 0 400
3 0 0 1 0 0 0 0 1 0 0 1 0 0 1 60
4 0 0 0 1 0 0 1 0 0 0 1 1 0 0 250
5 1 0 0 0 1 0 0 0 1 0 0 0 0 1 480
6 0 1 0 0 0 1 0 0 0 1 0 1 0 0 300
7 0 0 1 0 0 0 0 1 0 0 1 0 0 1 250
8 0 0 0 1 0 0 1 0 1 0 0 0 1 0 260
9 1 0 0 0 1 0 0 0 0 0 1 0 1 0 210
10 0 1 0 0 0 1 0 0 1 0 0 0 1 0 110
11 0 0 1 0 0 0 0 1 0 0 1 0 0 1 40
12 0 0 0 1 0 0 1 0 0 0 1 1 0 0 80
dummies
- person Sam   schedule 03.02.2018Service hours
~ datadum $ Customer.a + datadum $ Customer.b + datadum $ Customer.c + datadum $ Customer.d + datadum $ Country.China + datadum $ Country.Europe + datadum $ Country.Rus + datadum $ Country.US + datadum $ Industry.customized + datadum $ Industry.Customized + datadum $ Industry.mass + datadum $Machine type.A1
+ datadum $Machine type.A2
+ datadum $Machine type.A3
) - person Yannick   schedule 03.02.2018make.names()
в своем наборе данных, чтобы удалить пробел между ответом, и используйте формулуnls(Service.hours ~ . -ID, data = df)
- person Sam   schedule 03.02.2018plinear
. В случае сомнений обратитесь к документации по этой функции.?nls
- person Sam   schedule 03.02.2018