gen: Tạo biến mới- gen bien_moi = bien_a + bien_b
- gen bien_moi = bien_a - bien_b
- gen bien_moi = bien_a * bien_b
- gen bien_moi = bien_a / bien_b
- gen bien_moi = bien_a^2
replace & ifgen: Tạo biến mớireplace: Thay thế giá trị của biếnif: Lọc dữ liệu theo điều kiệngen bien_moi = giá_trị_1 if điều_kiện_1
replace bien_moi = giá_trị_2 if điều_kiện_2
replace bien_moi = giá_trị_3 if điều_kiện_3
replace...
recode & ifgen: Tạo biến mớirecode: Mã hoá lại các biếnsố_a/số_b = giá_trị_1: Từ số_a dến số_bsố_a = giá_trị_1recode bien_a (luật_1) (luật_2) (luật_n), gen(bien_a_moi)
recode bien_a bien_b (luật_1) (luật_2) (luật_n), gen(bien_a_moi bien_b_moi)
numbericgen ở cuối không bắt buộcNhập file Dữ liệu khảo sát phụ nữ (NLSW 1988) vào Stata. Tải practice1_nlsw88_tv.csv (.csv)
Bài 1 - 4:
tong_giohoc_knchenh_kn_lvtongthunhapBài 5 - 9:
nhomluong với phân loại mức lương theo giờ
thành 3 nhóm: 1. <5 USD, 2. Từ 5 - 10 USD,
>10 USDnhomtuoivà phân loại thành 3 nhóm:
1. ≤35 tuổi, 2. Từ 36 đến 40 tuổi và
3. ≥41 tuổinhomhocvan và phân loại thành 3 nhóm:
1. <12 năm, 2. Từ 12 đến 14 năm và
3. ≥15 nămnhomnamkn và phân loại thành 2 nhóm:
1. <10 năm và 2. >=10 nămtongthunhap_nhom và phân loại thành 3 nhóm:
1. < 10000 USD, 2. Từ 10000 - 49999 USD,
3. Từ 50000 USD trở lênBài 10: Mô tả tên biến, định nghĩa giá trị và gán nhãn biến cho các biến mới ở bài tập 5 - 9
Bước 1: Tìm mã định danh trùng lặp
duplicates report tenbien_id // Bảng tổng hợp số lượng duplicate trong bộ dữ liệu
sort tenbien_id // Sắp xếp mã id theo thứ tự
by tenbien_id: gen nb_dupli = _N // Tạo biến mới để kiểm tra trùng lặp
list tenbien_id bien_a bien_b bien_n if nb_dupli ==2 //Liệt kê danh sách các bản ghi có mã định danh trùng lặp
Bước 2: Xoá hàng trùng lặp
# Cách 1: Xoá thủ công từng hàng
drop in số_hàng
# Cách 2: Xoá hàng trùng lặp theo bien_id cụ thể và missing thông tin một vài biến
drop if inlist(bien_id, ma_id1, ma_id2, ma_idn) & missing(bien_a) & missing(bien_b)
Cú pháp
destring bien_a bien_b bien_n, replace
Cú pháp
gen bienngay_moi = date(bienngay_a, "DMY")
format bienngay_moi %dD/N/CY
Lưu ý: %dD/N/CY: dD là ngày,
N là tháng, CY là năm. Có thể đổi vị trị tuỳ
ý
| Bước | Lệnh Stata | Mô tả |
|---|---|---|
| 1 | egen q25 = pctile(bien_a), p(25) |
Tính Q1 (phân vị thứ nhất) của biến
bien_a |
| 2 | egen q75 = pctile(bien_a), p(75) |
Tính Q3 (phân vị thứ ba) của biến
bien_a |
| 3 | gen iqr = q75 - q25 |
Tính IQR = Q3 – Q1 |
| 4 | gen lower_bound = q25 - 1.5*iqr |
Tính giới hạn dưới |
| 5 | gen upper_bound = q75 + 1.5*iqr |
Tính giới hạn trên |
Liệt kê các id có giá trị ngoại lai:
list bien_id bien_a if bien_a < lower_bound | bien_a > upper_bound
Tạo biến mới không có giá trị ngoại lai:
gen bien_a_clean = bien_a if bien_a >= lower_bound & bien_a <= upper_bound
Cú pháp
misstable sum: Liệt kê các biến có missingFile name of dataset on disk để chọn file
ghép hàngcd
và bắt buộc 2 file dữ liệu không cần cùng folder.dtaKey VariablesFile name of dataset on disk để chọn file
ghép cộttenbien_key: là biến cả 2 bộ dữ liệu đều có và các giá
trị trong biến là duy nhất.dta
Bài 1:
Bài 2 - 5:
tuoi đang hiển thị trong stata là loại biến
nào? Cách xử lý dữ liệutuoiBài 6:
ngay_cd_lao về đúng định dạng ngày, tháng, nămBài 7:
bplong_coso1.dta và bplong_coso2.dta thành 1
file dữ liệu tổngBài 8:
bpwide_after.dta vào bộ dữ liệu trước khi điều
trị bpwide_before.dtaBài 1
Nhập bộ Dữ liệu đầu tư của 10 công ty công nghiệp lớn tại Hoa Kỳ trong 20 năm (1935–1954) vào STATA bằng câu lệnh:
webuse grunfeld, clear
Tính giá trị trung bình, độ lệch chuẩn, giá trị nhỏ nhất, giá trị
lớn nhất của các biến invest, mvalue, và
kstock.
Mô tả số tiền đầu tư hàng năm của mỗi công ty
Mô tả giá trị thị trường của mỗi công ty trong từng giai đoạn dưới đây:
So sánh trung bình số vốn cố định giữa công ty 1 và công ty 2
Chọn biểu đồ phù hợp cho biến invest
Bài 2
data_auto.dta vào Stata.
Tải
data_auto.dta