# Sinh 500 giá trị theo phân phối chuẩn N(50, 225)
set.seed(42)
data <- rnorm(500, mean = 50, sd = 15)
# Kiểm định Shapiro–Wilk
test <- shapiro.test(data)
print(test)
##
## Shapiro-Wilk normality test
##
## data: data
## W = 0.99852, p-value = 0.9533
# Kết luận
if (test$p.value > 0.05) {
cat("Dữ liệu tuân theo phân phối chuẩn\n")
} else {
cat("Dữ liệu không tuân theo phân phối chuẩn\n")
}
## Dữ liệu tuân theo phân phối chuẩn
# ===== CÂU 2 (GỘP) =====
# 1. Đọc dữ liệu Iris
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
iris = load_iris()
df = pd.DataFrame(iris.data, columns=iris.feature_names)
print("5 dòng đầu của dữ liệu:")
## 5 dòng đầu của dữ liệu:
print(df.head())
## sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)
## 0 5.1 3.5 1.4 0.2
## 1 4.9 3.0 1.4 0.2
## 2 4.7 3.2 1.3 0.2
## 3 4.6 3.1 1.5 0.2
## 4 5.0 3.6 1.4 0.2
# 2. Tính phương sai
print("\nPhương sai các đặc trưng:")
##
## Phương sai các đặc trưng:
print(df.var())
## sepal length (cm) 0.685694
## sepal width (cm) 0.189979
## petal length (cm) 3.116278
## petal width (cm) 0.581006
## dtype: float64
# 3. Vẽ biểu đồ scatter Sepal.Length vs Sepal.Width
plt.scatter(df["sepal length (cm)"], df["sepal width (cm)"])
plt.xlabel("Sepal Length")
plt.ylabel("Sepal Width")
plt.title("Scatter plot giữa Sepal Length và Sepal Width")
plt.show()
