forked from SergeyMirvoda/MD-DA-2017
-
Notifications
You must be signed in to change notification settings - Fork 0
/
5.0.lab.R
31 lines (28 loc) · 1.88 KB
/
5.0.lab.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#Пользуясь примером из лекции файл (5.0.R) проанализируйте данные
#о возрасте и физ. характеристиках молюсков
#https://archive.ics.uci.edu/ml/datasets/abalone
data <- read.csv("https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data", header=TRUE, sep=",")
summary(data)
colnames(data)
colnames(data) <- c("sex", "length", "diameter", "height",
"whole_weight", "shucked_weight",
"viscera_weight", "shell_weight", "rings")
colnames(data)
data$sex <- factor(c("Female", "Infant", "Male")[data$sex])
par(mfrow=c(1,3))
hist(data$diameter, main = "Диаметр, мм")
hist(data$height, main = "Высота, мм")
hist(data$whole_weight, main = "Полный вес, гр")
#Видим ассиметрию https://en.wikipedia.org/wiki/Skewness
#и выбросы (от них нужно избавиться)
#Визулизируем возможные зависимости
par(mfrow=c(1,2))
plot(data$diameter, data$whole_weight,'p',main = "Зависимость веса от диаметра")
plot(data$height, data$whole_weight,'p',main = "Зависимость веса от высоты")
#Хорошо видна зависимость, нужно её исследовать
#построить линейные модели при помощи функции lm, посмотреть их характеристики
#избавиться от выборосов, построить ещё модели и проверить их
#разделить массив данных на 2 случайные части
#подогнать модель по первой части
#спрогнозировать (функция predict) значения во второй части
#проверить качесвто прогноза