Nam <- subset(Pa2, GioiTinh2=="male")
head(Nam,4)
## ThuNhap2 Tuoi2 GioiTinh2 Bang2 NoiTieng2
## 1 10000 26 male ND no
## 3 85000 39 male NE no
## 5 91500 61 male DE no
## 8 30000 24 male NM no
Tren35 <- subset(Pa2, Tuoi2>35)
head(Tren35,4)
## ThuNhap2 Tuoi2 GioiTinh2 Bang2 NoiTieng2
## 3 85000 39 male NE no
## 4 75000 50 female NC no
## 5 91500 61 male DE no
## 6 49500 39 female SD no
N35 <- subset(Pa2, Tuoi2>35 & GioiTinh2=="male")
head(N35,4)
## ThuNhap2 Tuoi2 GioiTinh2 Bang2 NoiTieng2
## 3 85000 39 male NE no
## 5 91500 61 male DE no
## 10 23000 45 male VA no
## 14 65500 36 male ID no
data123 <- Pa2[, c(1,2,3)]
head(data123,5)
## ThuNhap2 Tuoi2 GioiTinh2
## 1 10000 26 male
## 2 10000000 18 female
## 3 85000 39 male
## 4 75000 50 female
## 5 91500 61 male
data3 <- Pa2[1:3, c(1,2,3)]
head(data3)
## ThuNhap2 Tuoi2 GioiTinh2
## 1 1.0e+04 26 male
## 2 1.0e+07 18 female
## 3 8.5e+04 39 male
ThuNhap2moi <- (ThuNhap2 + Tuoi2)
Tuoi2moi <- (Tuoi2+2)
d1 <- data.frame(ThuNhap2, Tuoi2, ThuNhap2moi)
d2 <- data.frame(d1, Tuoi2moi)
head(d2,4)
## ThuNhap2 Tuoi2 ThuNhap2moi Tuoi2moi
## 1 1.0e+04 26 10026 28
## 2 1.0e+07 18 10000018 20
## 3 8.5e+04 39 85039 41
## 4 7.5e+04 50 75050 52
Pa2$ThuNhap2[Pa2$Bang2=="NE" & Pa2$Tuoi2 > 30] <- 0
head(Pa2,6)
## ThuNhap2 Tuoi2 GioiTinh2 Bang2 NoiTieng2
## 1 10000 26 male ND no
## 2 10000000 18 female CA yes
## 3 0 39 male NE no
## 4 75000 50 female NC no
## 5 91500 61 male DE no
## 6 49500 39 female SD no
Pa2$GiauNgheo[ThuNhap2 >= 10000000] <- 'giau'
Pa2$GiauNgheo[ThuNhap2 < 10000000 & ThuNhap2 >= 500000] <- 'vua'
Pa2$GiauNgheo[ThuNhap2 < 500000] <- 'ngheo'
head(Pa2,4)
## ThuNhap2 Tuoi2 GioiTinh2 Bang2 NoiTieng2 GiauNgheo
## 1 1.0e+04 26 male ND no ngheo
## 2 1.0e+07 18 female CA yes giau
## 3 0.0e+00 39 male NE no ngheo
## 4 7.5e+04 50 female NC no ngheo
table(GioiTinh2)
## GioiTinh2
## female male
## 62 68
b <- rbinom(1000, 20, 0.477)
table(b)
## b
## 3 4 5 6 7 8 9 10 11 12 13 14 15 16
## 1 7 27 43 88 136 158 188 143 113 58 22 14 2
hist(b, main="Phân phối nhị phân của biến giới tính nữ")
- Giải thích: Dòng số liệu thứ nhất (2, 3, …, 18) là số người thuộc giới
tính nữ trong số 20 người mà chúng ta chọn. Dòng số liệu thứ hai cho
chúng ta biết số lần chọn mẫu trong 1000 lần xảy ra.
Ý nghĩa: Hàm phân phối Poisson, nói chung, rất giống với hàm nhị phân, ngoại trừ thông số p thường rất nhỏ và n thường rất lớn. Vì thế, hàm Poisson thường được sử dụng để mô tả các biến số rất hiếm xảy ra.
Qua số liệu đã thống kê, ta biết được tỉ lệ người được khảo sát là người nổi tiếng là 11/130=0.085.Tính trung bình cứ khoảng 2.000 người thì thì có 17 người nổi tiếng. Hỏi xác suất chọn trúng 2 người nổi tiếng là bao nhiêu
dpois(2, 8.5)
## [1] 0.007350295
tabGioiTinh2=table(GioiTinh2)
barplot(tabGioiTinh2, main= "Biểu đồ biến Giới Tính" )
- female: 47.3% - male 52.7%
tabNoiTieng2=table(NoiTieng2)
barplot(tabNoiTieng2, main= " Biểu đồ biến Nổi Tiếng" )
- no: 91.5% - yes: 8.5%
tabBang2 = table(Bang2)
barplot(tabBang2, main= "Biểu đồ biến các Bang")
BangThuNhap2 <- cut(ThuNhap2, breaks = c(10000, 50000, 250000, 1000000,10000000, 42000000 ), labels = c("thap", "trungbinh", "trungbinhcao","cao", "ratcao"), right = TRUE)
tabThuNhap2 = table(BangThuNhap2)
barplot(tabThuNhap2, main= "Biểu đồ biến Thu Nhập")
- thấp: 50.8% - trung bình: 39.2% - trung bình cao: 2.3% - cao: 1.5% -
rất cao: 5.4%
BangTuoi2 <- cut(Tuoi2, breaks = c(18, 30, 40, 52), labels = c("18-30", "30-40", "40-50"), right = TRUE)
tabTuoi2=table(BangTuoi2)
barplot(tabTuoi2, main= "Biểu đồ biến Thu Nhập")
- 18-30: 24.6% - 30-40: 33.8% - 40-52: 25.4%
stripchart(ThuNhap2, main= "Biểu đồ Strip của biến Thu Nhập", xlab = "Thu Nhập")
stripchart(Tuoi2, main= "Biểu đồ Strip của biến Tuổi", xlab = "Tuổi")
### Biểu đồ cột cho 2 biến
tabTNT2 = table(BangThuNhap2, BangTuoi2)
barplot(tabTNT2, beside=TRUE, xlab="Độ tuổi", ylab= "Tần số")
#### Giới Tính và Nổi Tiếng
tabGTNT2=table(NoiTieng2, GioiTinh2)
barplot(tabGTNT2, beside=TRUE, xlab="Giới Tính", ylab= "Tần số")
pie(tabThuNhap2, main = "Biểu đồ tròn của biến Giới Tính")
- thấp: 50.8% - trung bình: 39.2% - trung bình cao: 2.3% - cao: 1.5% -
rất cao: 5.4%
pie(tabGioiTinh2, main = "Biểu đồ tròn của biến Giới Tính")
- female: 47.3% - male 52.7%
pie(tabNoiTieng2, main = "Biểu đồ tròn của biến Nổi Tiếng" )
- no: 91.5% - yes: 8.5%
pie(tabTuoi2, main = "Biểu đồ tròn của biến Tuổi")
- 18-30: 24.6% - 30-40: 33.8% - 40-52: 25.4%
plot(ThuNhap2, Tuoi2)
mean(ThuNhap1)
## [1] 1503412
median(ThuNhap1)
## [1] 50000
mean(Tuoi1)
## [1] 39.17692
median(Tuoi1)
## [1] 38.5
var(ThuNhap1)
## [1] 3.49546e+13
sd(ThuNhap1)
## [1] 5912241
var(Tuoi1)
## [1] 122.8909
sd(Tuoi1)
## [1] 11.08562
BangThuNhap1 <- cut(ThuNhap1, breaks = c(10000, 50000, 250000, 1000000,10000000, 42000000 ), labels = c("thap", "trungbinh", "trungbinhcao","cao", "ratcao"), right = TRUE)
tabThuNhap1=table(BangThuNhap1)
tabThuNhap1
## BangThuNhap1
## thap trungbinh trungbinhcao cao ratcao
## 66 51 3 2 7
BangTuoi1 <- cut(Tuoi1, breaks = c(18, 30, 40, 52), labels = c("18-30", "30-40", "40-50"), right = TRUE)
tabTuoi1=table(BangTuoi1)
tabTuoi1
## BangTuoi1
## 18-30 30-40 40-50
## 32 44 33
table(GioiTinh1)
## GioiTinh1
## female male
## 62 68
barplot(tabThuNhap1, xlab = "Thu Nhập", ylab = "Tần số", main = "Biểu đồ tần số của biến Thu Nhập", col = c("red", "green", "blue", "pink", "white"))
barplot(tabTuoi1, xlab = "Tuổi", ylab = "Tần số", main = "Biểu đồ tần số của Biến Tuổi", col = c("red", "green", "blue"))
barplot(table(GioiTinh1), xlab = "Tuổi", ylab = "Tần số", main = "Biểu đồ tần số của Giới Tính", col = c("red", "green"))
chisq.test(ThuNhap1, Tuoi1, correct=FALSE)
##
## Pearson's Chi-squared test
##
## data: ThuNhap1 and Tuoi1
## X-squared = 3735.3, df = 3526, p-value = 0.007096
tabTNT1=table(BangThuNhap1, BangTuoi1)
tabTNT1
## BangTuoi1
## BangThuNhap1 18-30 30-40 40-50
## thap 21 25 13
## trungbinh 5 16 18
## trungbinhcao 1 0 1
## cao 1 0 0
## ratcao 3 3 1
plot(vearnandage18den30, xlab = "Mức Thu Nhập: Thấp - Tr.Bình - Cao - Rất Cao", ylab = "Tần Số", main = "Biểu đồ tần số của biến Thu Nhập ở độ tuổi 18 đến 30", col = c("red", "green", "blue","white"))+plot(vearnandage30den45, xlab = "Mức Thu Nhập: Thấp - Tr.Bình - Cao - Rất Cao", ylab = "Tần Số", main = "Biểu đồ tần số của biến Thu Nhập ở độ tuổi 30 đến 40", col = c("red", "green", "blue","white"))+plot(vearnandage45den52, xlab = "Mức Thu Nhập: Thấp - Tr.Bình - Cao - Rất Cao", ylab = "Tần Số", main = "Biểu đồ tần số của biến Thu Nhập ở độ tuổi 40 đến 52", col = c("red", "green", "blue","white"))
## integer(0)
chisq.test(ThuNhap1, GioiTinh1, correct=FALSE)
##
## Pearson's Chi-squared test
##
## data: ThuNhap1 and GioiTinh1
## X-squared = 84.78, df = 86, p-value = 0.517
library(AER)
data("Parade2005")
head(Parade2005,4)
## earnings age gender state celebrity
## 1 1.0e+04 26 male ND no
## 2 1.0e+07 18 female CA yes
## 3 8.5e+04 39 male NE no
## 4 7.5e+04 50 female NC no
Pa <- Parade2005
names(Pa) <- c("ThuNhap","Tuoi","GioiTinh","Bang","NoiTieng")
ThuNhap <- Pa$ThuNhap
Tuoi <- Pa$Tuoi
GioiTinh <- Pa$GioiTinh
x <- Pa[, c("ThuNhap","Tuoi","GioiTinh")]
str(x)
## 'data.frame': 130 obs. of 3 variables:
## $ ThuNhap : num 10000 10000000 85000 75000 91500 49500 105000 30000 40000 23000 ...
## $ Tuoi : num 26 18 39 50 61 39 31 24 24 45 ...
## $ GioiTinh: Factor w/ 2 levels "female","male": 2 1 2 1 2 1 1 2 1 2 ...
library(ggplot2)
barplot(ThuNhap, xlab = "", ylab = "Thu Nhập", main = "Biểu đồ thể hiện dữ liệu của biến Thu Nhập", col = c("red", "green", "blue", "pink", "white"))
barplot(Tuoi, xlab = "", ylab = "Tuổi", main = "Biểu đồ thể hiện dữ liệu của biến Tuổi", col = c("red", "green", "blue", "pink", "white"))
m <- Pa[Pa$GioiTinh=='male' & Pa$ThuNhap > 20000000, ]
head(m)
## ThuNhap Tuoi GioiTinh Bang NoiTieng
## 13 2.1e+07 20 male OH yes
## 29 2.5e+07 51 male FL yes
## 96 4.2e+07 28 male IN yes
ThuNhaptang = Pa[order(Pa$ThuNhap), ]
head(ThuNhaptang,4)
## ThuNhap Tuoi GioiTinh Bang NoiTieng
## 1 10000 26 male ND no
## 100 11000 43 female IN no
## 21 12000 39 female MI no
## 94 12000 27 female VA no
BangThuNhap <- cut(ThuNhap, breaks = c(10000, 50000, 250000, 1000000,10000000, 42000000 ), labels = c("thap", "trungbinh", "trungbinhcao","cao", "ratcao"), right = TRUE)
tabThuNhap=table(BangThuNhap)
tabThuNhap
## BangThuNhap
## thap trungbinh trungbinhcao cao ratcao
## 66 51 3 2 7
BangTuoi <- cut(Tuoi, breaks = c(18, 30, 40, 52), labels = c("18-30", "30-40", "40-50"), right = TRUE)
tabTuoi=table(BangTuoi)
tabTuoi
## BangTuoi
## 18-30 30-40 40-50
## 32 44 33