Tuan V. Nguyen Garvan Institute of Medical Research Professor, UNSW School of Public Health and Community Medicine Professor of Predictive Medicine, University of Technology Sydney Adj. Professor of Epidemiology and Biostatistics, School of Medicine Sydney, University of Notre Dame Australia
© Tuan V. Nguyen
Phân tích dữ liệu và ứng dụng | Đại học Dược Hà Nội | 12/6 to 17/6/2019
RMardown, RStudio, R
• R là nền tảng
• R Studio được xây dựng trên R
– có 'menu' và giao diện biểu đồ
• R Mardown là một phần của RStudio
– giúp 'document' mã R
– tái lập (reproducibility)
R Studio
• Download R Studio
https://www.rstudio.com/products/RStudio/#Desktop
• R Markdown có trong R Studio
R mardown
Data objects
Mã R
Output
Vận hành của R Studio
Có thể lưu mã R và output bằng cách dùng File/Save
R Markdown và mục tiêu tái lập
Đảm bảo tính reproducibility: dữ liệu + mã R + văn bản
R Markdown
• R + Markdown = RMarkdown
• Có thể xem là một "markup language"
• Lưu trữ mã R
• Export output sang Word, pdf, html
Một session với R Markdown
Một document của R Markdown
• Header
• R codes
• Output
Một document của R Markdown
• Header
# Phân tích tương quan giữa BMI và pcfat ## Dữ liệu obesity data, Việt Nam ### PI: Tuan Nguyen
• R codes
# Đọc dữ liệu vào R
``` {r}
• Output
ob = read.csv("~/Dropbox/_Lectures and Talks/UTS Data Analytics 2019/obesity data.csv")
head(ob)
summary(lm(pcfat ~ bmi, data=ob))
# Vẽ mối tương quan giữa BMI và pcfat
Giữa ``` và ``` là R codes
library(ggplot2)
p = ggplot(data=ob, aes(x=bmi, y=pcfat, ol=gender))
p + geom_point() + geom_smooth(method="lm")
```
Header
Header
R codes
R codes
in-line
R codes
Output
R Markdown codes and output
---
title: "Analysis of obesity"
author: "Tuan Nguyen"
date: "4/22/2019"
output: html_document
---
# Analysis of obesity dataset
## Data are from a study in Vietnam
### PI: Tuan Nguyen
R Markdown codes and output
# Đọc dữ liệu vào R
```{r}
ob = read.csv("~/Dropbox/_Lectures and Talks/UTS Data Analytics 2019/obesity data.csv")
head(ob)
```
# Phân tích mô hình hồi qui tuyến tính
```{r}
summary(lm(pcfat ~ bmi, data=ob))
```
### Summary
The mean of percent body fat is `r mean(ob$pcfat)`.
# Vẽ mối tương quan giữa BMI và pcfat
``` {r}
library(ggplot2)
p = ggplot(data=ob, aes(x=bmi, y=pcfat, col=gender))
p + geom_point() + geom_smooth(method="lm")
```
Sau khi viết xong, có thể "Knit" để cho ra html output trên rpubs.com
rpubs.com/nguyet
RStudio và RMarkdown
• Hai 'additions' rất quan trọng cho phân tích dữ liệu với R
• RStudio cung cấp giao diện 'thân thiện' hơn R
• RMarkdown là một 'ngôn ngữ bị chú' cho một công trình
phân tích dữ liệu
– một phương tiện rất có ích cho lưu trữ mã R
– đảm bảo tính tái lập trong phân tích dữ liệu
– có thể xuất sang Word, html và pdf