- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想了解在 Stata 中编程 if
和条件 if
之间的区别。这就是我在做什么。
sysuse auto,clear
#conditional if
sum price if price>4499
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
price | 48 7312.813 3102.784 4504 15906
# programming if
if price>3291{
sum price
}
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
price | 74 6165.257 2949.496 3291 15906
# programming if
if price>5000{
sum price
}
This doesn't give me anything
#programming if
if price>4000{
sum price}
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
price | 74 6165.257 2949.496 3291 15906
我想知道为什么编程 if
会给出 3291 和 4000 而不是 5000 的输出。我可以理解编程 if
查看价格的第一个观察值,然后看看是否大于指定数则执行程序。但是,这显然不是我在这里看到的。在这方面的任何帮助将不胜感激。
最佳答案
您看到了预期的行为。
sysuse auto
. list in 1
+------------------------------------------------------------------------------------------+
1. | make | price | mpg | rep78 | headroom | trunk | weight | length | turn | displa~t |
| AMC Concord | 4,099 | 22 | 3 | 2.5 | 11 | 2,930 | 186 | 40 | 121 |
|------------------------------------------------------------------------------------------|
| gear_r~o | foreign |
| 3.58 | Domestic |
+------------------------------------------------------------------------------------------+
所以第一个价格观察是 4,099 美元。当您运行“条件”if 时,如 sum price if price > 4499
,Stata 会找到 price
超过 4,499 的观测值,然后运行 summarize
指挥那些观察。有 48 个这样的观察结果。
当你做一个“如果编程”时,执行是:
if
语句并判断条件是否满足。
并忽略 if
代码。因此,当您执行 if price > 4000 { ... }
时,Stata 查看第一个观察值,发现价格大于 4,000 并继续执行代码。由于 if
block 中的 summarize
没有条件,因此执行命令时会包含所有观察结果。当您执行 if price > 5000 { ... }
时,Stata 会发现条件不满足并跳过 { ... }
中的代码。
if
限定符和if
语句之间的区别是explained by StataCorp in their FAQs .
关于if-statement - Stata 中的条件 if 和编程 if,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17810731/
为什么有两个不同的命令来生成新变量的原因? 有什么简单的方法可以记住何时使用gen和何时使用egen? 最佳答案 它们都创建一个新变量,但是使用不同的函数集。当您对数据集中的其他变量进行简单转换时,通
给我谜语: scalar bah = .1*1000.01 display bah 1 scalar list bah = 100.001 display 似乎是故意显示错误的数字。
假设我有一个包含一些变量名的本地宏 local indep "cat dog pig" 如果我希望宏只包含 cat 和 dog,如何从宏中删除 pig? 最佳答案 上下文是您想要从列出它们的字符串中删
一些数据集带有全小写的值标签,我最终得到的图表和表格显示了“埃及”、“约旦”和“沙特阿拉伯”的结果,而不是大写的国家名称。 我猜是proper() string 函数可以为我做一些事情,但我没有找到正
我最近购买了在 Linux 服务器上运行的 Stata MP12(8 核)许可证。 有没有人写过 Stata 程序,比如说模拟研究来测试 Stata MP 的性能?我想监视在作业处理过程中实际使用的内
我不想用这个问题来打扰你们,但我收到错误“{ required”,即使我的所有循环似乎都正确打开(和关闭),不幸的是 Stata 没有告诉你错误在哪里,所以我不明白为什么会这样。顺便说一句,如果我用
编辑:下面提供了一个工作示例 原文:后估计命令可用于预测因变量的值。这是一个示例,您可以在其中键入 _b[_cons] + _b[x1]*1 + _b[x2] 以获得 Y 的实际值。对于 Stata
我正在绘制时间序列并根据 Windows 7 上的 Stata 13.1 中的 bool 指标变量对某些时间段进行着色。如果指标变量等于 1,则对时间段进行着色,如果缺少则不着色。我想在 y 轴上时间
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 去年关闭。 Improve this
熟悉 R,我想知道向量的 Stata 等价物是什么(例如 var<-c(1,2,3,4) )? 我知道 Stata 使用宏,但我不知道如何在一个宏中存储多个值(创建宏的数组类型)。 我想遍历一些字符串
我在综合辨别力改善 (IDI) 方面得到了两个截然不同的结果。 如果我使用 nriidi.pkg 包并运行 idi 我会得到此输出 . idi totaloutcome grace_prob,
我正在使用一个基本上是 URL 的变量。因此,观察结果包括诸如此类的值 www.google.com https://www.google.com https://yahoo.movies.com
我目前有 2 个变量,state 和 year,我希望将它们转换成 1 个变量,stateyear。 我希望 stateyear 变量具有以下形式的值:state_year(例如 Texas_1962
我正在使用一个基本上是 URL 的变量。所以观察包括例如值 www.google.com https://www.google.com https://yahoo.movies.com 我正在尝试
我在工作中遇到了一个问题:我合并了两个数据集,并且有许多变量具有相同的内容,但是在数据集 1 的变量中具有值的观察在数据集中具有缺失值2. 所以我需要将值从一个变量转移到另一个变量。 这是我迄今为止最
我有一个格式如下所示的日期,我使用 R 将它从字符串转换为日期 date <- "20 Nov 2010 21:44:00:000" strptime(date,"%d %b %Y %H:%M:%S"
我有面板数据(时间: 日期,名称: 代码)。我想为变量 x 和 y 创建 10 个滞后。现在,我使用以下代码一个一个地创建每个滞后变量: by ticker: gen lag1 = x[_n-1] 但
在 Stata ,我想运行一个回归并直观地显示每个变量的系数及其相对于零的置信区间,如下所示的代码和图: sysuse auto regress price mpg weight length for
我有一个带有变量 x 的文件 aa,该变量标有值标签 x_lab。我想在Stata文件bb的变量x上使用这个值标签: use bb, clear label value x x_lab 如何导入值标签
假设我的当前工作文件夹有一个很长的文件路径(80 多个字符): use .\random_folders_name\project1\secret_data\survey_data\big_const
我是一名优秀的程序员,十分优秀!