4. Thống kê
4.1. Data
Chúng ta đã có một số kiến thức cơ bản về thống kê, Và bây giời chúng ta sẽ làm việc với các dữ liệu có sẵn. Chúng ta bắt đầu với thư viện “iris” và load data “iris” từ thư viện
Data Iris chứa dữ liệu về các loài hoa
data("iris")
head(iris,10)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 5.0 3.4 1.5 0.2 setosa
## 9 4.4 2.9 1.4 0.2 setosa
## 10 4.9 3.1 1.5 0.1 setosa
Mười dòng cuối của bản dữ liệu
tail(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
Tên các biến có trong data iris
names(iris)
## [1] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width" "Species"
Số quan sát và số biến có trong bản dữ liệu iris
str(iris)
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
Tổng quan về biến Sepal.length
summary(iris$Sepal.Length)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 4.300 5.100 5.800 5.843 6.400 7.900
Biến Sepal.length có min = 4.3, Max = 7.9, và các phân vị như trong bảng.
Đồ thị thể hiện phân bố của biến Sepal.length
hist(iris$Sepal.Length)
x <- runif(20,1, 10)
y <- x + rnorm(20)
plot(x,y, ann=FALSE, col="red", pch=16)
box(col="blue")
lmfit <- lm(y~x)
abline(lmfit)
Tạo ra một dữ liệu ngẫu nhiên
ran <- rnorm(20)
ran
## [1] 0.52546246 -0.51377611 -0.07018058 -1.76144648 -0.15689183 0.44131672
## [7] 0.11553576 0.41151406 0.46185790 -1.38736365 1.90549894 1.65729770
## [13] -0.17993818 -0.20584390 -0.61224607 0.13146009 0.41574877 0.58276258
## [19] -0.51950528 -0.15036844
plot(ran)
plot(x= iris$Sepal.Length,
y= iris$Sepal.Width,
col = iris$Species,
main = "Plot of Sepal Length vs Width",
sub = "Stratified by Species",
xlab = "Chiều dài của Sepal",
ylab = "Chiều rộng của Sepal")