Stata系列————入门

数据导入

常用的数据格式主要是.td .csv 和Excel,注意在导入之前,最好先定义一下工作目录:

1
cd "D:\Stata\Study\Data Sets- STATA"

在导入命令之后,最好也加上clear来清除内存中的数据

1.导入.csv等分隔符文本文件

1
import delimited "xxx.csv", clear 

2.导入 Excel 文件

1
import excel "xxx.xlsx", sheet("xx") firstrow clear

这里指定了从名为 xx 的工作表导入数据且第一行是变量名

3.导入.dta的Stata数据文件

1
use "xxx.dta", clear

描述性统计

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
summarize

*基本的描述性统计命令,可以得出变量的观测数、平均值、标准差、最小值、最大值等。*

summarize var1 var2

*指定对var1和var2进行描述统计*
*后面指定变量的操作都一样,不再赘述*

tabulate

*生成频数表和交叉表,适合分类变量*

tabstat var1 var2, statistics(mean sd min max median)

*指定变量1,2,统计后面括号里的统计量,均值、标准差、最小值、最大值、中位数*

describe

*这个命令用于描述数据集中的变量,包括变量的类型、标签、缺失值等*

codebook
*提供了关于数据集的详细信息,包括变量的标签、值标签、缺失值代码等*

correlate var1 var2

*用于计算变量之间的相关系数,它默认计算的是皮尔逊(Pearson)相关系数,但也可以计算斯皮尔曼(Spearman)或肯德尔(Kendall)相关系数。correlate 命令通常用于小样本数据,因为它依赖于数据的正态分布*

pwcorr var1 var2, sig

*用于计算变量之间的成对皮尔逊相关系数,并且可以显示显著性水平。它通常用于大样本数据,因为它不依赖于数据的正态分布*

histogram

*绘制变量的直方图,用于观察数据的分布情况*

graph box varname

*绘制箱线图,用于观察数据的分布和异常值*

scatter var1 var2

*绘制散点图,用于观察两个连续变量之间的关系*

变量间的简单计算

在Stata中,进行变量之间的简单计算可以通过生成新变量或修改现有变量来完成。以下是一些基本的命令和操作:

生成新变量:

1
generate newvar = expression

或者简写为:

1
gen newvar = expression

其中 expression 可以是变量、常数或变量之间的算术运算

算数运算

  • 加法
    1
    gen newvar = var1 + var2
  • 减法
    1
    gen newvar = var1 - var2
  • 乘法
    1
    gen newvar = var1 * var2
  • 除法
    1
    gen newvar = var1 / var2
  • 幂运算
    1
    gen newvar = var1^2

修改现有变量

使用 replace 命令来修改现有变量的值。

1
replace varname = expression

其中 expression 可以是变量、常数或变量之间的算术运算

示例

  • 将所有值增加10
    1
    replace var1 = var1 + 10
  • 将小于0的值设置为0
    1
    replace var1 = 0 if var1 < 0

条件计算

使用条件表达式来对特定条件下的变量进行计算

1
generate newvar = condition ? value_if_true : value_if_false

或者使用 if 子句:

1
generate newvar = value_if_true if condition

示例

  • 如果 var1 大于10,则 newvar 为 var1 的两倍,否则为0
    1
    gen newvar = var1 > 10 ? var1 * 2 : 0

函数

Stata内置了一些数学函数,可以用来进行更复杂的计算

1
generate newvar = functionname(arg1, arg2, ...)

例如,使用自然对数函数:

1
gen ln_var1 = ln(var1)

循环计算

对于需要对多个变量进行相同操作的情况,可以使用循环。

1
2
3
foreach var of varlist var1 var2 var3 {
generate newvar`var' = `var' * 2
}

这个循环会为 var1var2var3 每个变量生成一个新变量,新变量是原变量的两倍。


Stata系列————入门
http://example.com/2024/09/11/入门/
作者
cyx94a
发布于
2024年9月11日
许可协议