R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

summary(cars)
##      speed           dist       
##  Min.   : 4.0   Min.   :  2.00  
##  1st Qu.:12.0   1st Qu.: 26.00  
##  Median :15.0   Median : 36.00  
##  Mean   :15.4   Mean   : 42.98  
##  3rd Qu.:19.0   3rd Qu.: 56.00  
##  Max.   :25.0   Max.   :120.00

Including Plots

You can also embed plots, for example:

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot. # Đặt seed để đảm bảo tái lập kết quả set.seed(123)

Khai báo các tham số

mu <- 40 sigma <- 122 n <- 600 # Lưu ý: Nếu n > 5000, shapiro.test có thể không hoạt động tốt

Sinh dữ liệu ngẫu nhiên từ phân phối chuẩn

data <- rnorm(n, mean = mu, sd = sigma)

Kiểm định Shapiro-Wilk (chỉ chạy nếu n <= 5000)

if (n <= 5000) { shapiro_test <- shapiro.test(data) print(shapiro_test) } else { print(“Shapiro-Wilk test có thể không chính xác với n > 5000”) }

Bài 2: Phân tích dữ liệu Iris

Chỉ cài đặt package nếu chưa có

if (!requireNamespace(“tidyverse”, quietly = TRUE)) install.packages(“tidyverse”) if (!requireNamespace(“ggplot2”, quietly = TRUE)) install.packages(“ggplot2”)

Nhập thư viện

library(tidyverse) library(ggplot2)

Đọc dữ liệu Iris từ URL

df <- read.csv(“https://raw.githubusercontent.com/mwaskom/seaborn-data/master/iris.csv”)

Tính giá trị trung bình và phương sai của Sepal Width theo từng loại hoa

stats <- df %>% group_by(species) %>% summarise( mean_sepal_width = mean(sepal_width), var_sepal_width = var(sepal_width) )

print(stats)

Vẽ biểu đồ Boxplot của Sepal Width theo từng loại hoa

ggplot(df, aes(x = species, y = sepal_width)) + geom_boxplot(fill = “skyblue”, color = “darkblue”) + ggtitle(“Boxplot of Sepal Width by Species”) + xlab(“Species”) + ylab(“Sepal Width”) + theme_minimal()