messenger_logo
Liên hệ qua Messenger
SciEco

Tạo biến mới trên STATA

NH
Nguyễn Hữu Kiên
Ngày viết: 22/06/2023

Trong bài viết này, SciEco cung cấp nội dung về tạo biến và hiệu chỉnh biến trên STATA.

1. Các toán tử trong Stata

Các toán tử trong STATA được trình bày trong bảng dưới đây:

+
Cộng
!
Không
>
Lớn hơn
-
Trừ
|
Hoặc
<
Nhỏ hơn
*
Nhân
&
>=
Lớn hơn hoặc bằng
/
Chia
=
Phép gán
<=
Nhỏ hơn hoặc bằng
^
==
Bằng
+
Nối chuỗi
!=
Không bằng

Ví dụ: biểu thức x+yxyx×y- \dfrac{x + y ^ {x - y}}{x \times y} được viết thành –(x+y^(x-y))/(x*y)

2. Các kiểu dữ liệu

Giá trị nhỏ nhất
GIá trị nhỏ nhất
Giá trị lớn nhất
byte
-127
100
int
-32,767
32,740
long
−2,147,483,647
2,147,483,647
float
−1.70141173319 × 10^38
1.70141173319 × 10^38
double
−8.9884656743 × 10^307
8.9884656743 × 10^307
Loại lưu trữ
Độ dài lớn nhất
str1
1
str2
2
...
.
...
.
str2045
2045
strL
2,000,000,000

3. Tạo biến mới với câu lệnh gen

Câu lệnh gen được thực hiện khi cần tạo biến mới dựa trên tính toán biểu thức.
Cấu trúc câu lệnh

generate [type] newvar[:lblname] =exp [if] [in] [, before(varname) | after(varname)]

Tạo biến số newv1 bằng tổng biến v1 cộng thêm 2

1generate newv1= v1 + 2

Trường hợp tương tự, biến newv1 đứng trước/đứng sau biến v1

1generate newv1=v1 + 2, before(v1)
2generate newv1=v1 + 2, after(v1)

Trường hợp tương tự, biến newv1 dạng byte với nhãn giá trị (label values) mylabel (Nhãn của biến và nhãn giá trị được trình bày ở nội dung dưới)

1generate byte newv1:mylabel=v1 + 2

Tạo biến chuỗi newv2 bằng “SciEco”

1generate newv2= "SciEco"

Tạo biến newv3 bằng thứ tự của quan sát

1generate newv3=_n

Tạo biến newv4 bằng tổng số quan sát

1generate newv4=_N

4. Tạo biến mới với câu lệnh egen

Câu lệnh egen được thực hiện khi cần tạo biến mới dựa trên hàm:

egen [type] newvar = fcn(arguments) [if] [in] [, options]

Tạo biến với rowtotal( )

1egen hsum = rowtotal(a b c)
2generate vsum = sum(hsum)
3egen sum = total(hsum)

Kết quả

a
b
c
hsum
vsum
sum
1.
.
2
3
5
5
63
2.
4
.
6
10
15
63
3.
7
8
.
15
30
63
4.
10
11
12
33
63
63

Tạo biến với rowmean(), rowmedian(), rowpctile(), rowsd(), và rownonmiss()

Hàm rowmean() tính giá trị trung bình theo quan sát của các biến khác nhau (tương đương với hàm average trong excel); tương tự, các hàm còn lại lần lượt tính toán giá trị trung vị, phân vị, độ lệch chuẩn và số biến không bị missing theo hàng.

1egen avg = rowmean(a b c)
2egen median = rowmedian(a b c)
3egen pct25 = rowpctile(a b c), p(25)
4egen std = rowsd(a b c)
5egen n = rownonmiss(a b c)

Kết quả:

a
b
c
avg
median
pct25
std
n
1.
.
2
3
2.5
2.5
2
.7071068
2
2.
4
.
6
5
5
4
1.414214
2
3.
7
8
.
7.5
7.5
7
.7071068
2
4.
10
11
12
11
11
10
1
3

Nội dung chi tiết các hàm trong STATA sẽ được trình bày tại các bài viết tiếp theo trong chủ đề “Các lệnh xử lý dữ liệu trong STATA”

Thay đổi biến đã có với lệnh replace

Thay đổi giá trị của 1 biến đã thực hiện lệnh replace. Ví dụ, tạo biến giả nhận dạng trẻ em (kid) dựa vào biến tuổi (age).

1gen kid=1 if age<16
2    replace kid=0 if kid==.

hoặc

1gen kid=.
2		replace kid=1 if age<16
3		replace kid=0 if age>=16

Bài viết khác
Dữ liệu mạng xã hội đã trở thành một nguồn tài nguyên vô giá cho các nghiên cứu xã hội học, hành vi người dùng và phân tích thị trường. Bên cạnh các nguồn dữ liệu truyền thống, việc thu thập thông tin từ Facebook luôn là mục tiêu quan trọng của các nhà nghiên cứu dữ liệu. Để hỗ trợ quá trình này, công cụ facebook2stata được phát triển nhằm giúp người dùng kết nối trực tiếp Stata với hệ thống dữ liệu của Facebook. Bài viết này sẽ hướng dẫn chi tiết cách cài đặt, cấu hình mã xác thực và thực hiện các truy vấn cơ bản từ Facebook vào môi trường làm việc của Stata. Cài đặt công cụ facebook2stata Để bắt đầu, bạn cần cài đặt gói lệnh facebook2stata từ máy chủ của Stata. Việc cài đặt vô cùng đơn giản bằng cách khởi chạy dòng lệnh sau trong cửa sổ dòng lệnh của phần mềm.
Phương pháp ước lượng tối đa khả dĩ mục tiêu thường được gọi là TMLE là một công cụ mạnh mẽ trong phân tích nhân quả. Nhiều nhà nghiên cứu từng nghe về đặc tính song trùng bền vững của phương pháp này nhưng chỉ thực sự thấu hiểu nó khi tiến hành giả lập dữ liệu thực tế. Phương pháp này hoạt động cực kỳ hiệu quả khi một trong hai mô hình kết quả hoặc mô hình điều trị được thiết lập chính xác. Việc kết hợp thuật toán XGBoost cùng TMLE giúp tự động bắt trọn các mối quan hệ phức tạp trong dữ liệu mà không cần phải khai báo các tương tác thủ công. Bài viết này sẽ đi sâu vào cơ chế vận hành của phương pháp thông qua việc giả lập dữ liệu cụ thể trong môi trường R. Khái Niệm Về Tmle TMLE là một phương pháp thống kê tiên tiến được sử dụng để ước lượng các tác động nhân quả trong các nghiên cứu quan sát và thử nghiệm lâm sàng. Phương pháp này kết hợp linh hoạt giữa các thuật toán học máy và kỹ thuật thống kê truyền thống nhằm mang lại các ước lượng vững cho hiệu quả tác động của can thiệp, đồng thời kiểm soát tốt các yếu tố nhiễu. Quy trình vận hành của TMLE gồm hai giai đoạn chính. Đầu tiên, hệ thống sẽ ước lượng mô hình kết quả và mô hình điều trị. Sau đó, các ước lượng này được sử dụng để hiệu chỉnh nhằm hướng trực tiếp đến tham số mục tiêu cần nghiên cứu. Cách tiếp cận này đặc biệt hữu ích trong các bối cảnh mà phương pháp truyền thống dễ bị lệch hoặc hoạt động kém hiệu quả do sự xuất hiện của các mối quan hệ phi tuyến phức tạp.
SciEco
Science for Economics
Định hướng đào tạo phân tích dữ liệu, xây dựng chính sách, tối ưu hoá danh mục tài chính cá nhân và dự báo thị trường.
Liên hệ
Địa chỉ: Số 60, ngõ 41, Phố Thái Hà, Trung Liệt, Đống Đa, Hà Nội (Google Map)
Email: science.for.economics@gmail.com
Hotline: 03.57.94.7680 (Mrs. Hà)
Mạng xã hội