Stata - 帮助创建一个等于度数的变量
Stata - Help creating a variable which equals the number of degrees
我在 Stata 工作,负责电力需求和供应。其中一项任务是:"Create a new variable called heatd
(heating days) which equals the number of degrees below 17C"
我已经在 Stata 中尝试过,在这里进行了谷歌搜索,但我不确定这是什么意思。我是要制作一个虚拟变量吗?
如果有人可以帮助我,即提示,状态代码,我将非常感激。
有些人会认为我对提问者很严厉,所以这里有一个可重现的例子。这个想法是,当温度降至 17 摄氏度(以下简称 17 摄氏度)以下时,我们会打开加热,因此如果温度低于 17 摄氏度,一天内需要升温(17 - temp)摄氏度,否则为 0 摄氏度。对数月、季节或年份进行总结是很常见的;发问者不知道这一点,所以我指出 egen
的 total()
函数是最好的工具。无论是对于个别天数还是在较长时间段内求和,测量单位都是摄氏度天数或度数天数,并约定使用哪种温度标度(摄氏度或华氏度等)。有些人可能想以图形方式将其视为温度-时间图上的一个区域,或离散近似的积分。
. clear
. input temp date
temp date
1. 19 1
2. 18 2
3. 17 3
4. 16 4
5. 15 5
6. end
. gen heatday = max(0, 17 - temp)
. list
+-----------------------+
| temp date heatday |
|-----------------------|
1. | 19 1 0 |
2. | 18 2 0 |
3. | 17 3 0 |
4. | 16 4 1 |
5. | 15 5 2 |
+-----------------------+
因此,问题的核心是 max(0, 17 - temp)
。在 Stata 中,另一种方法可以是 cond(temp < 17, 17 - temp, 0)
,它根据它是太长(坏)还是更明确(好)来划分意见。
我在 Stata 工作,负责电力需求和供应。其中一项任务是:"Create a new variable called heatd
(heating days) which equals the number of degrees below 17C"
我已经在 Stata 中尝试过,在这里进行了谷歌搜索,但我不确定这是什么意思。我是要制作一个虚拟变量吗?
如果有人可以帮助我,即提示,状态代码,我将非常感激。
有些人会认为我对提问者很严厉,所以这里有一个可重现的例子。这个想法是,当温度降至 17 摄氏度(以下简称 17 摄氏度)以下时,我们会打开加热,因此如果温度低于 17 摄氏度,一天内需要升温(17 - temp)摄氏度,否则为 0 摄氏度。对数月、季节或年份进行总结是很常见的;发问者不知道这一点,所以我指出 egen
的 total()
函数是最好的工具。无论是对于个别天数还是在较长时间段内求和,测量单位都是摄氏度天数或度数天数,并约定使用哪种温度标度(摄氏度或华氏度等)。有些人可能想以图形方式将其视为温度-时间图上的一个区域,或离散近似的积分。
. clear
. input temp date
temp date
1. 19 1
2. 18 2
3. 17 3
4. 16 4
5. 15 5
6. end
. gen heatday = max(0, 17 - temp)
. list
+-----------------------+
| temp date heatday |
|-----------------------|
1. | 19 1 0 |
2. | 18 2 0 |
3. | 17 3 0 |
4. | 16 4 1 |
5. | 15 5 2 |
+-----------------------+
因此,问题的核心是 max(0, 17 - temp)
。在 Stata 中,另一种方法可以是 cond(temp < 17, 17 - temp, 0)
,它根据它是太长(坏)还是更明确(好)来划分意见。