楼主: 153_1581220913
335 4

[统计软件] STATA如果将某一区间赋值为1,不在该期间赋值为0 [推广有奖]

  • 6关注
  • 2粉丝

本科生

58%

还不是VIP/贵宾

-

威望
0
论坛币
19 个
通用积分
19.6189
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
718 点
帖子
37
精华
0
在线时间
145 小时
注册时间
2020-2-9
最后登录
2025-12-13

楼主
153_1581220913 学生认证  发表于 2024-3-24 14:35:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请问各位大佬,知道企业发行债券开始时间、截止时间,如何将这段时间内的数据都赋值为1,不是这段时间赋值为0
是否处于发债期
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Stata tata

沙发
fugangxx 在职认证  发表于 2024-3-28 19:55:53
首先得确定是否包括端点:即等于发行起始日期或到期日期到底是填写1还是填写0, 设 date 为需判定的时间变量,根据需要转变为日期型变量
方法一  gen   replace
gen 是否处于发行期内 = 0
replace 是否处于发行期内 ==1 if date >= date(发行起始日期) &  date <= date(到期日期)

方法二   函数    inrange() 函数 或  clip() 函数

gen 是否处于发行期内= inrange(date,发行起始日期,到期日期 )    //  包含起始日期点
gen 是否处于发行期内= clip(date,发行起始日期,到期日期 )    //  不包含起始日期点
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
153_1581220913 + 1 + 1 + 1 + 1 精彩帖子

总评分: 论坛币 + 1  学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

藤椅
fugangxx 在职认证  发表于 2024-3-28 20:23:10
同样设 date 为需判定的时间变量   发行起始日期   到期日期等变量先转换为日期型数据
方法三   cond() 函数
gen 是否处于发行期内= cond(date>=发行起始日期 & date<=到期日期, 1, 0, . )      //  可以只包含起点或者终点

方法四   recode 命令
recode date (min/date(发行起始日期) date(到期日期)/max = 0)
recode date (date(发行起始日期) / date(到期日期) = 1)

板凳
fugangxx 在职认证  发表于 2024-4-1 23:28:41
周末看书又得到一种解决方法,简单且有效
设date 为需判定的时间变量
gen 是否处于发行期内 = (date>=发行起始日期 & date<=到期日期)    //  在发行起始日期和到期日期之间的日期设置为1,当然包含这两个时间点,如果不包括这两个时间点,则删除括号中的等于号)

报纸
fugangxx 在职认证  发表于 2024-4-1 23:33:36
再向楼主提一建议:
采用 dataex 展示部分数据,或者编些数据或者示例数据,供帮助者调试程序,以确定结果
建议有效或无效,希楼主回复一句

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-1 11:33