set.seed(123)  # Đảm bảo tái tạo được kết quả
data <- rbinom(100, size=10, prob=0.3)  # Tạo 100 giá trị ngẫu nhiên từ phân phối nhị thức

# Vẽ biểu đồ histogram của dữ liệu
hist(data, 
     main="Histogram của Dữ liệu Nhị Thức", 
     xlab="Giá trị", 
     col="skyblue", 
     border="black", 
     breaks=10)  # Tạo histogram với 10 khoảng

# Bước 2: Kiểm định Kolmogorov-Smirnov để so sánh với phân phối nhị thức lý thuyết
ks_result <- ks.test(data, "pbinom", 10, 0.3)  # Kiểm định Kolmogorov-Smirnov
## Warning in ks.test.default(data, "pbinom", 10, 0.3): ties should not be present
## for the one-sample Kolmogorov-Smirnov test
# In kết quả kiểm định Kolmogorov-Smirnov
print(ks_result)
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  data
## D = 0.26961, p-value = 9.711e-07
## alternative hypothesis: two-sided
data(iris)
# Bước 2: Tính giá trị trung bình, trung vị và độ lệch chuẩn của từng đặc trưng
mean_values <- colMeans(iris[, 1:4])  # Tính trung bình của các cột từ 1 đến 4
median_values <- apply(iris[, 1:4], 2, median)  # Tính trung vị của các cột
std_values <- apply(iris[, 1:4], 2, sd)  # Tính độ lệch chuẩn của các cột
# In kết quả
cat("Trung bình của từng đặc trưng:\n")
## Trung bình của từng đặc trưng:
print(mean_values)
## Sepal.Length  Sepal.Width Petal.Length  Petal.Width 
##     5.843333     3.057333     3.758000     1.199333
cat("\nTrung vị của từng đặc trưng:\n")
## 
## Trung vị của từng đặc trưng:
print(median_values)
## Sepal.Length  Sepal.Width Petal.Length  Petal.Width 
##         5.80         3.00         4.35         1.30
cat("\nĐộ lệch chuẩn của từng đặc trưng:\n")
## 
## Độ lệch chuẩn của từng đặc trưng:
print(std_values)
## Sepal.Length  Sepal.Width Petal.Length  Petal.Width 
##    0.8280661    0.4358663    1.7652982    0.7622377
# Bước 3: Vẽ biểu đồ boxplot cho từng đặc trưng theo từng loại hoa (Species)
par(mfrow=c(2, 2))  # Chia cửa sổ đồ họa thành 2 hàng và 2 cột
# Boxplot cho Sepal.Length
boxplot(Sepal.Length ~ Species, data = iris, main = "Boxplot của Sepal.Length theo Species", col = "lightblue")
# Boxplot cho Sepal.Width
boxplot(Sepal.Width ~ Species, data = iris, main = "Boxplot của Sepal.Width theo Species", col = "lightgreen")
# Boxplot cho Petal.Length
boxplot(Petal.Length ~ Species, data = iris, main = "Boxplot của Petal.Length theo Species", col = "lightpink")
# Boxplot cho Petal.Width
boxplot(Petal.Width ~ Species, data = iris, main = "Boxplot của Petal.Width theo Species", col = "lightyellow")

# Reset lại cửa sổ đồ họa
par(mfrow=c(1, 1))