stata中定义一个新的变量,原有变量中大于0它取1,等于0或缺失它取0
时间: 2024-02-11 18:08:08 浏览: 615
您可以使用Stata中的generate命令来创建新变量,并使用条件语句来设置其值。以下是一个示例代码:
```
generate newvar = 0
replace newvar = 1 if oldvar > 0 & !missing(oldvar)
```
这将创建一个名为newvar的新变量,并将其初始化为0。然后,使用replace命令将值为大于0且不缺失的oldvar设置为1。如果oldvar等于0或缺失,则newvar仍保持为0。
相关问题
stata定义一个常数变量
在Stata中,定义一个常数变量可以使用 `scalar` 命令。例如,定义一个常数变量 `pi`,其值为3.14,可以使用以下命令:
```
scalar pi = 3.14
```
这将创建一个名为 `pi` 的常数变量,其值为3.14。您可以使用 `display` 命令来查看这个常数变量的值:
```
display pi
```
这将输出 `3.14`。
stata如何根据一个变量中的数据生成多个0-1变量
Stata中可以使用`tabulate`命令来生成多个0-1变量。具体步骤如下:
1. 使用`tabulate`命令生成一个变量的频数表,例如:
```
tabulate var1
```
2. 在频数表中,找到需要生成0-1变量的那个变量的变量名,例如`var1`。
3. 使用`egen`命令生成多个0-1变量,例如:
```
egen var1_0to1 = anycount(var1==1)
egen var1_1to2 = anycount(var1==2)
egen var1_2to3 = anycount(var1==3)
```
这里,`anycount()`函数会计算`var1`中等于1、等于2和等于3的观测值的个数,并生成一个新的变量,变量名分别为`var1_0to1`、`var1_1to2`和`var1_2to3`。如果需要生成更多的0-1变量,可以按照类似的方式进行。
4. 如果需要将生成的0-1变量保存到数据集中,可以使用`save`命令,例如:
```
save new_dataset.dta, replace
```
这里,将生成的新的数据集保存为`new_dataset.dta`,并覆盖原有的数据集。
阅读全文