Thống
kê mô là nói đến việc mô tả dữ liệu bằng các phép tính và chỉ số thống
kê thông thường như số trung bình (mean), số trung vị (median),
phương sai (variance), độ lệch chuẩn (standard deviation), ... cho
các biến số liên tục và tỉ số cho các biến số không liên tục [1].
Qua ví dụ dưới đây mình đã tìm hiểu và thực hành
xử lý bằng một số hàm chính dùng cho phân tích mô tả trong R. Với mục đích chính là xử lý số liệu trong quá trình thực hiện đề tài, viết bài báo nên mình lưu lại các
mã đã xử lý. Nhân đây, mình chia sẻ nếu ai quan tâm, không dám múa rìu qua
mặt các tiền bối, có gì mong được lượng thứ.
Dữ liệu mà mình xử lý có tên là kll1. Trong nghiên cứu
này, ngoài các chỉ sinh trưởng (biến
liên tục) của cây Keo lá liềm ở các công thức thí nghiệm khác nhau
(CT1, CT2, CT3 và ĐC), còn có các biến không liên tục như phân thân, sống chết cho 273 đối tượng
cây Keo lá liềm nghiên cứu.
1. Trước tiên, đọc
dữ liệu
> attach(kll1)
> head(kll1)
dp Age
CTTN dg
hvn dt Thanchinh thc.50 phth sc
deld delh
244 Trieu_Phong 1.2 CT 3 3.02 1.20 1.35 2
2 0 1 2.52 1.00
245 Trieu_Phong 1.2 CT 3 3.25 1.43 1.50 3
3 0 1 2.71 1.19
246 Trieu_Phong 1.2 CT 3 3.98 1.60 2.00 2
2 0 1 3.32 1.33
247 Trieu_Phong 1.2 CT 3 2.71 1.10 1.20 2
2 0 1 2.25 0.92
248 Trieu_Phong 1.2 CT 3 2.71 1.00 1.40 3
1 0 1 2.25 0.83
249 Trieu_Phong 1.2 CT 3 2.99 1.15 1.45 4
3 0 1 2.49 0.96
deldt
244 1.13
245 1.25
246 1.67
247 1.00
248 1.17
249 1.21
2.
Xem các cột trong dữ liệu có những
gì?
> names(kll1)
[1]
"dp"
"Age"
"CTTN" "dg" "hvn" "dt"
[7]
"Thanchinh" "thc.50"
"phth"
"sc" "deld" "delh"
[13] "deldt"
3.
Để tính các thông số như số trung bình, trung vị, sai tiêu chuẩn,
... ta dùng hàm describe trong package psych
> library(psych)
> describeBy(kll1, skew=F, range=F)
vars n mean sd median trimmed mad min max range skew
dp* 1 273 2.00 0.00 2.00 2.00 0.00 2.00 2.00 0.00 NaN
Age 2 273 1.20 0.00 1.20 1.20 0.00 1.20 1.20 0.00 NaN
CTTN* 3 273 2.50 0.93 3.00 2.50 1.48 1.00 4.00 3.00 -0.18 -
dg 4 247 2.52 0.78 2.39 2.46 0.70 0.32 6.05 5.73 0.75
hvn 5 247 0.86 0.29 0.80 0.84 0.25 0.35 2.00 1.65 0.84
dt 6 247 1.04 0.36 1.00 1.01 0.30 0.38 3.55 3.17 1.76
Thanchinh 7 247 3.23 1.48 3.00 3.19 1.48 1.00 8.00 7.00 0.38 -
thc.50 8 247 2.08 1.13 2.00 2.04 1.48 0.00 5.00 5.00 0.25 -
phth 9 247 0.13 0.34 0.00 0.05 0.00 0.00 1.00 1.00 2.14
sc 10 273 0.90 0.29 1.00 1.00 0.00 0.00 1.00 1.00 -2.74
deld 11 247 2.10 0.65 1.99 2.05 0.59 0.27 5.04 4.77 0.75
delh 12 247 0.72 0.24 0.67 0.70 0.21 0.29 1.67 1.38 0.84
deldt 13 247 0.86 0.30 0.83 0.84 0.25 0.31 2.96 2.65 1.76
4.
Tuy nhiên, các thông số trên tính
chung cho các CTTN. Để mô tả dữ liệu
theo từng CTTN, chúng ta dùng hàm describeBy như sau:
> describeBy(kll1, group=CTTN, skew=F, range=F)
group: CT 1
vars n mean sd se
dp* 1 48 2.00 0.00 0.00
Age 2 48 1.20 0.00 0.00
CTTN* 3 48 1.00 0.00 0.00
dg 4 47 2.58 0.69 0.10
hvn 5 47 0.86 0.25 0.04
dt 6 47 1.04 0.25 0.04
Thanchinh 7 47 3.49 1.32 0.19
thc.50 8 47 2.30 1.08 0.16
phth 9 47 0.21 0.41 0.06
sc 10 48 0.98 0.14 0.02
deld 11 47 2.15 0.58 0.08
delh 12 47 0.72 0.21 0.03
deldt 13 47 0.87 0.21 0.03
------------------------------------------------------------------------
group: CT 2
vars n mean sd se
dp* 1 75 2.00 0.00 0.00
Age 2 75 1.20 0.00 0.00
CTTN* 3 75 2.00 0.00 0.00
dg 4 71 2.31 0.77 0.09
hvn 5 71 0.76 0.20 0.02
dt 6 71 0.91 0.30 0.04
Thanchinh 7 71 2.86 1.38 0.16
thc.50 8 71 1.77 1.00 0.12
phth 9 71 0.06 0.23 0.03
sc 10 75 0.95 0.23 0.03
deld 11 71 1.92 0.64 0.08
delh 12 71 0.64 0.17 0.02
deldt 13 71 0.75 0.25 0.03
------------------------------------------------------------------------
group: CT 3
vars n mean sd se
dp* 1 115 2.00 0.00 0.00
Age 2 115 1.20 0.00 0.00
CTTN* 3 115 3.00 0.00 0.00
dg 4 110 2.67 0.81 0.08
hvn 5 110 0.95 0.33 0.03
dt 6 110 1.16 0.40 0.04
Thanchinh 7 110 3.55 1.54 0.15
thc.50 8 110 2.32 1.17 0.11
phth 9 110 0.13 0.33 0.03
sc 10 115 0.96 0.20 0.02
deld 11 110 2.23 0.68 0.06
delh 12 110 0.80 0.28 0.03
deldt 13 110 0.97 0.33 0.03
------------------------------------------------------------------------
group: DC
vars n mean sd se
dp* 1 35 2.00 0.00 0.00
Age 2 35 1.20 0.00 0.00
CTTN* 3 35 4.00 0.00 0.00
dg 4 19 2.20 0.58 0.13
hvn 5 19 0.71 0.24 0.06
dt 6 19 0.82 0.30 0.07
Thanchinh 7 19 2.16 1.12 0.26
thc.50 8 19 1.26 0.81 0.18
phth 9 19 0.26 0.45 0.10
sc 10 35 0.54 0.51 0.09
deld 11 19 1.83 0.48 0.11
delh 12 19 0.59 0.20 0.05
deldt 13 19 0.68 0.25 0.06
Theo địa phương
> describeBy(kll, group=dp,
skew=F, range=F)
group: Le_Thuy
vars
n mean sd se
dp* 1 527 1.00 0.00 0.00
Age 2 527 1.84 0.50 0.02
CTTN* 3 527 2.50 1.00 0.04
dg 4 484 3.47 1.19 0.05
hvn 5 484 1.30 0.53 0.02
dt 6 484 1.60 0.59 0.03
Thanchinh 7 484 2.17 1.01 0.05
thc.50 8 484 7.75 6.78 0.31
phth 9 484 0.55 0.50 0.02
sc 10 527 0.92 0.27 0.01
deld 11 484 1.92 0.50 0.02
delh 12 484 0.72 0.21 0.01
deldt 13 484 0.86 0.20 0.01
------------------------------------------------------------------------
group: Trieu_Phong
vars
n mean sd se
dp* 1 889 2.00 0.00 0.00
Age 2 889 1.82 0.49 0.02
CTTN* 3 889 2.65 0.82 0.03
dg 4 822 2.93 1.35 0.05
hvn 5 822 1.20 0.55 0.02
dt 6 822 1.57 0.59 0.02
Thanchinh 7 822 2.98 1.37 0.05
thc.50 8 822 6.86 6.12 0.21
phth 9 822 0.52 0.50 0.02
sc 10 889 0.92 0.26 0.01
deld 11 823 1.67 0.68 0.02
delh 12 823 0.67 0.23 0.01
deldt 13 823 0.87 0.24 0.01
Theo tuổi
> describeBy(kll,group=Age, skew=F, range=F)
group: 1.2
vars n mean sd se
dp* 1 273 2.00 0.00 0.00
Age 2 273 1.20 0.00 0.00
CTTN* 3 273 2.50 0.93 0.06
dg 4 247 2.52 0.78 0.05
hvn 5 247 0.86 0.29 0.02
dt 6 247 1.04 0.36 0.02
Thanchinh 7 247 3.23 1.48 0.09
thc.50 8 247 2.08 1.13 0.07
phth 9 247 0.13 0.34 0.02
sc 10 273 0.90 0.29 0.02
deld 11 247 2.10 0.65 0.04
delh 12 247 0.72 0.24 0.02
deldt 13 247 0.86 0.30 0.02
------------------------------------------------------------------------
group: 1.3
vars n mean sd se
dp* 1 243 1.00 0.00 0.00
Age 2 243 1.30 0.00 0.00
CTTN* 3 243 2.56 0.90 0.06
dg 4 227 2.64 0.66 0.04
hvn 5 227 0.95 0.23 0.02
dt 6 227 1.10 0.26 0.02
Thanchinh 7 227 2.55 1.05 0.07
thc.50 8 227 1.90 0.86 0.06
phth 9 227 0.26 0.44 0.03
sc 10 243 0.93 0.25 0.02
deld 11 227 2.03 0.51 0.03
delh 12 227 0.73 0.18 0.01
deldt 13 227 0.84 0.20 0.01
------------------------------------------------------------------------
group: 1.6
vars n mean sd se
dp* 1 184 2.00 0.00 0.00
Age 2 184 1.60 0.00 0.00
CTTN* 3 184 3.00 0.00 0.00
dg 4 184 1.83 0.45 0.03
hvn 5 184 0.94 0.20 0.01
dt 6 184 1.41 0.25 0.02
Thanchinh 7 184 4.09 1.04 0.08
thc.50 8 184 2.86 0.92 0.07
phth 9 184 1.00 0.00 0.00
sc 10 184 1.00 0.00 0.00
deld 11 184 1.14 0.28 0.02
delh 12 184 0.59 0.13 0.01
deldt 13 184 0.88 0.15 0.01
------------------------------------------------------------------------
group: 2.3
vars n mean sd se
dp* 1 716 1.60 0.49 0.02
Age 2 716 2.30 0.00 0.00
CTTN* 3 716 2.54 0.97 0.04
dg 4 648 3.90 1.33 0.05
hvn 5 648 1.57 0.56 0.02
dt 6 648 2.00 0.49 0.02
Thanchinh 7 648 2.12 0.97 0.04
thc.50 8 648 12.22 5.54 0.22
phth 9 648 0.65 0.48 0.02
sc 10 716 0.91 0.29 0.01
deld 11 649 1.72 0.59 0.02
delh 12 649 0.69 0.25 0.01
deldt 13 649 0.88 0.22 0.01