890 likes | 1.57k Views
ỨNG DỤNG NGÔN NGỮ R TRONG PHÂN TÍCH DỮ LIỆU. Nhóm thực hiện:. Phan Đình Khôi Nguyễn Hồ Anh Khoa. Hướng dẫn cài đặt và vận hành R Xử lý số liệu bằng R Phân tích thống kê mô tả bằng R Phân tích hồi quy bằng R Phân tích dãy số thời gian bằng R. Nội dung chính. Tại sao sử dụng R
E N D
ỨNG DỤNG NGÔN NGỮ R TRONG PHÂN TÍCH DỮ LIỆU Nhóm thực hiện: Phan Đình Khôi Nguyễn Hồ Anh Khoa
Hướng dẫn cài đặt và vận hành R • Xử lý số liệu bằng R • Phân tích thống kê mô tả bằng R • Phân tích hồi quy bằng R • Phân tích dãy số thời gian bằng R Nội dung chính
Tại sao sử dụng R • Tổng quan R • Workspace • Đọc và lưu dữ liệu trong R Nội dung 1. GIỚI THIỆU R
Mã nguồn mở • Hoàn toàn miễn phí • Chạy trên nền Windows, MacOS • Nhiều phương pháp phân tích không có trong các phần mền khác • Vẽ biểu đồ tuyệt vời Tại sao R
Thuật ngữ/ngôn ngữ khó hiểu • Dùng câu lệnh tương tác • Nhiêu ký hiệu • Cần quen với ngôn ngữ lập trình Lưu ý!
R là công cụ phân tích thống kê • Cho phép thực hiện tất cả các mô hình phân tích • Mô phỏng • Vẽ đồ thị và biểu đồ rất đẹp • Lập trình cho phương pháp mới R làm được gì?
Truy cập http://cran.r-project/ • R for Windows screen, chọn “base” • Download R • Run, chọn OK sau đó chọn FINISH • Biểu tượng R sẽ xuất hiện trên desktop • Bắt đầu sử dụng R Tải phần mềm R
Object: Đối tượng • - tên cho mỗi đối tượng (case sensitive) • - gán giá trị cho đối tượng sử dụng assignment operator (<- hoặc =) • Ví dụ: >tuoi=25 • >Tuoi<-25 • Note: tuoi và Tuoi là 2 đối tượng khác nhau Làm việc với R
Object: Đối tượng • # tạo object sử dụng hàm concatenation (nối số liệu) • >x = c(1:10) • # gọi các giá trị của object • >x • >x[(x>8)|(x<5)] kết quả? Làm việc với R
Object: Cách đặt tên Đối tượng • # tạo object y bao gồm 10 giá trị normal • >y = rnorm(10) • # tạo myobject bao gồm 20 giá trị nornal • >myobject<- rnorm(20) • >my.object<-rnorm(20) • >my object<-rnorm(20) Không được Làm việc với R
Object: Đối tượng • # tạo object y bao gồm 10 giá trị normal • >y = rnorm(10, mean=0, sd=1) • Hoặc • >y=rnorm(10,0,1) Làm việc với R
Workspace: Môi trường làm việc • # tạo thư mục chứa dữ liệu • > setwd(“D:/thongke”) • Note: + thongke phải được tạo trước ở D: • + R làm việc với / (không phải \) • # xem thư mục làm việc • > getwd() Làm việc với R
Workspace: Môi trường làm việc • # chuyển thư mục làm việc • >setwd(“C:/mydocument”) • # lưu trữ lệnh • >savehistory(file=“myfile”) • # mở lệnh đã lưu trữ • >loadhistory(file=“myfile”) Làm việc với R
Packages: Gói công cụ • - R cấu trúc theo packages • - Mỗi phương pháp phân tích được thiết kế trong một package • - Tải package về để sử dụng trong R • - Để xem các packages sẳn có • > library() Làm việc với R
Packages: Gói công cụ • # cài đặt package mới • >install.packages(c(“moments”) • > library() • # cài đặt nhiều packages • >install.packages(c(“car”,“ggplot2”)) Làm việc với R
Ghi xuất các dữ liệu dưới dạng file.rda • # tạo hai vector cột x, y • >x=c(1,3,1,3,5) • >y=c(2,5,6,7,8) • # sử dụng data.frame để nhập hai vector x, y vào object tên là mydat • >mydat=data.frame(x,y) Đọc và lưu dữ liệu trong R
Ghi xuất các dữ liệu dưới dạng file.rda • # lưu mydat dưới dạng R file với tên mydatfile.rda • >save(mydat,file=“mydatfile.rda") Đọc và lưu dữ liệu trong R
Nhập số liệu trực tiếp trong R • # mở cửa sổ nhập liệu bằng lệnh edit(data.frame()) • >nhaplieu=edit(data.frame()) • # lưu nhaplieu dưới dạng R file với tên mynhaplieu.rda • >save(nhaplieu,file=“mynhaplieu.rda") Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R • Trực tiếp từ R • Từ text, excel, SPSS, Stata • Từ mạng • Lưu ý: kiểm tra thư mục đang làm việc Đọc và lưu dữ liệu trong R
Đọc dữ liệu từ R (file.rda) • # gọi tên file (tìm file mynhaplieu.rda) • >filename=file.choose() • # đọc dữ liệu dưới dạng R bằng lệnh load • >dat= load(“mynhaplieu.rda”) • # xem dữ liệu • >head(dat) Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ text (ASCII file) • # lấy tên file • >filename=file.choose() • # đọc dữ liệu dùng lệnh read.table() • >dat1= read.table(“home price.txt, header=T) • # xem dữ liệu • >head(dat1) Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ Excel (.csv) • # lấy tên file • >filename=file.choose() • # đọc dữ liệu dùng lệnh lệnh read.csv() • >dat2= read.csv(“income.csv”,header=T) • # xem dữ liệu • >head(dat2) Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ Excel (.xls) sử dụng package “gdata” • # lấy tên file • >filename=file.choose() • # đọc dữ liệu dùng lệnh lệnh read.xls() • >dat3= read.xls(“myfile.xls”, sheet=1, header=T) • # xem dữ liệu Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ SPSS • # lấy tên file • >filename=file.choose() • # đọc dữ liệu lệnh read.sav() • >dat4= read.sav(“myspss.sav”) • # xem dữ liệu • >head(dat4) Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ Stata • # lấy tên file • >filename=file.choose() • # đọc dữ liệu sử dụng lệnh read.dta() • >dat5= read.dta(“mystata”) • # xem dữ liệu • >head(dat) Đọc và lưu dữ liệu trong R
Đọc dữ liệu vào R từ website • # đọc dữ liệu từ trang http://statistics.vn • >dat6=read.csv("http://statistics.vn/data/ExampleData.csv", header=T) • > head(dat) Đọc và lưu dữ liệu trong R
Làm việc với object sau khi đọc vào R • # gọi object dùng lệnh attach() • >attach(dat6) • # dùng attach() để gọi các objects trước đây Đọc và lưu dữ liệu trong R
Tạo biến mới • # gọi object dùng lệnh attach() • >attach(dat6) • # dùng attach() để gọi các objects trước đây Biên tập số liệu
Tạo biến mới • Làm việc với một phần dữ liệu • Kết nối dữ liệu Biên tập số liệu
Một số hàm cơ bản • Hàm Mô tả Hàm Mô tả • + Cộng < Nhỏ hơn • - Trừ > Lớn hơn • * Nhân <= Nhỏ hơn/bằng • / Chia >= Lớn hơn/bằng • ^ Lũy thừa == Exactly equal to • != Not equal to !x Not x • x|y x OR y x&y x AND y Biên tập số liệu
Tạo biến mới bằng câu lệnh • # gọi object từ file mydatafile.rda • >mydat=load(mydatafile.rda) • # xem tiêu đề dữ liệu • >head(mydat) • # làm việc với số liệu • >attach(mydat) Biên tập số liệu
Tạo biến mới bằng câu lệnh • # Tạo biến mới và kết nối với một dataframe sử dụng dấu $ • >mydat$sum = mydat$x +mydat$y • # Tạo biến mới z=x*y trong mydat • >mydat$z = mydat$x * mydat$y Biên tập số liệu
Tạo biến mới bằng câu lệnh • # Tạo biến mới id và gender • >id = c(1:5) • > gender = c("male", "female", "male", "female", "male") • # Tạo biến mới sex với 1=male, 2=female • >mydat=data.frame(id,gender) • >mydat$sex[gender==“male”]<-1 • >mydat$sex[gender==“female”]<-2 Biên tập số liệu
Tạo biến mới bằng câu lệnh • # Tạo biến mới là group • nếu id=1,2,3 là group A • id=4,5 là group B • >mydat$group[id>=“1” & id<=“3”]<-“A” • >mydat$group[id>=“4” & id<=“5”]<-“B” • >head(mydat) Biên tập số liệu
Làm việc với một phần dữ liệu • # data frame là một matrix (dòng và cột) • >id=c(1:10) • >name=c(“A”,“B”,“C”,“D”,“E”,“F”,“G”,“H”,“I”,“J”) • >x=c(12, 15, 67, 32, 26, 86, 11, 16, 25, 37) • >dat=data.frame(id, name, x) • # dat có bao nhiêu dòng và cột? • >dat Biên tập số liệu
Làm việc với một phần dữ liệu • # Liệt kê dòng và cột của dữ liệu • >dat[,1] liệt kê cột 1 • >dat[,1:2] liệt kê cột 1 • >dat[2,] liệt kê dòng 2 • >dat[3:8,1] liệt kê • >dat[1:5,2:3] liệt kê Biên tập số liệu
Làm việc với một phần dữ liệu • # làm việc trong nhóm id<=5 • >dat1=subset(dat, id<=5) • # làm việc với nhóm theo điều kiện id<=8 và x <30 • >dat2=subset(dat, id<=8 & x<30) • # sắp xếp thứ tự theo biến x • >new.dat=dat[order(x), ] thấp đến cao Biên tập số liệu